QGIS制作导出三维模型并发布

本文基于QGIS3.12版本,利用QuickMapServices、OSMDownloader和Qgis2threejs插件制作三维模型。先加载OSM地图,下载兴趣区域地图,修饰数据解决乱码,增加建筑高度属性,接着导出web三维场景资源并发布,还可导出gltf格式模型文件,最后上传到网站查看。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

QGIS制作导出三维模型并发布

1. 加载OSM地图

以下三维模型场景的搭建基于QGIS3.12版本。预先安装了QuickMapServices、OSMDownloader和Qgis2threejs插件。
在这里插入图片描述

2.下载兴趣区域的地图

找到安装好的插件QuickMapServices,加载地图,找到要下载的区域;在安装好OSMDownloader插件后,找到矩形截取按钮,截取兴趣的区域地图
在这里插入图片描述
设置数据的保存路径

在这里插入图片描述
选中Load layer after download,也就是下载完成后载入qgis。

其中下载的数据包含小区或者建筑的多边形图层。

3. 修饰地图数据

加载后的osm数据,有乱码现象,且不显示注记。乱码的解决是设置编码为utf-8。
在这里插入图片描述
在这里插入图片描述
其中value是注记所使用的字段。

4.增加建筑的高度属性

打开建筑小区图层的属性表和字段计算器
在这里插入图片描述
在这里插入图片描述
增加floor字段,并永表达式赋初始值1-10之间的随机数字。
Qgis2threejs插件中的设置
在这里插入图片描述
设置要拉高的图层

  1. 设置要拉高的图层
    在这里插入图片描述
    点击Apply应用之后,效果如下:
    在这里插入图片描述

5. 导出web三维场景资源

在Qgis2threejs设置界面上选择导出网页资源
在这里插入图片描述

5. 发布网页资源

双击打开html可以在本地打开。
在这里插入图片描述
还可以在web服务器上发布,供网络用户访问。

这里用python建立了简单的web服务器 python版本大于3以上,

在index.html同级路径下打开powershell,输入python -m http.server 默认打开8000端口,

在浏览器中打开localhost:8000,效果和本地打开一致。

6.导出场景作为模型文件

在Qgis2threejs导出界面上选择导出gltf格式的模型文件
在这里插入图片描述

7.查看模型

将导出的beijing.gltf压缩为beijing.zip,上传到gltfviewer网站上浏览(https://gltf-viewer.donmccurdy.com/)

在gltfviewer网站看到效果如下
在这里插入图片描述

### QGIS 中创建三维地图的方法 QGIS 对于二维地图的支持非常强大,但在三维交互方面表现稍弱[^1]。然而,这不意味着无法在 QGIS 中创建高质量的三维地图。通过特定插件和配置工具可以实现较为复杂的 3D 可视化效果。 #### 使用 OSGEarth 插件增强三维体验 为了弥补 QGIS 在三维方面的不足,可以通过安装 OSGEarth 插件来加强三维交互能力。OSGEarth 提供了更强大的三维渲染引擎,虽然会消耗更多系统资源,但是能够显著提升用户体验。 #### 利用内置 3D 工具创建基本模型 对于不需要特别复杂场景的情况,可以直接利用 QGIS 自带的 3D 功能: - **添加图层**:导入所需的地图数据作为基础图层; - **启用 3D 视图**:切换至 3D 模式调整视角参数; - **保存成果**:完成编辑后可将最终作品导出为静态图片文件[^4]; ```python from qgis.core import QgsProject, QgsRasterLayer project = QgsProject.instance() urlWithParams = 'type=xyz&url=https://a.tile.openstreetmap.org/%7Bz%7D/%7Bx%7D/%7By%7D.png' rlayer = QgsRasterLayer(urlWithParams, 'OpenStreetMap', 'wms') if not rlayer.isValid(): print("Layer failed to load!") else: project.addMapLayer(rlayer) ``` 上述代码展示了如何向项目中加入 OpenStreetMap 图瓦片服务作为一个栅格图层的例子,在此基础上还可以进一步叠加其他矢量或栅格数据集用于构建更加丰富的三维景观。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值