QGIS(Quantum GIS)是一款免费的桌面GIS软件,可运行在Linux、Unix、Mac OSX和Windows等平台。QGIS是基于Qt,使用C++开发的一个用户界面友好、跨平台的开源版桌面地理信息系统。它主要提供GIS数据的显示、编辑和分析、制图等功能。
今天小崇就和大家分享如何使用在QGIS中制作三维模型并利用Qgis2threejs发布至CGSCloud Portal平台和gltfviewer网站。
友情提醒:在操作的过程中一定要联网联网联网!!!
1.在QGIS中联网安装好QuickMapServices、OSMDownloader和Qgis2threejs插件。
具体操作:插件——管理并安装插件——在搜索框里输入QuickMapServices——安装插件即可。(OSMDownloader和Qgis2threejs插件的安装也是如此)
以下是Qgis2threejs插件安装成功的页面:
2.打开QuickMapServices加载OSM地图。
具体操作:网络(W)——QuickMapServices——OSM——OSM Standard。
OSM地图就加载出来了:
3.截取并下载目标区域的地图(本文中小崇选取的是郑州火车站西广场的区域)
具体操作:点击下图中鼠标所指的矩形截取按钮(鼠标放在上面会显示Download OSM data by rectangle selection)开始截取区域。
注意:截取区域面积越大下载越慢,建议放大地图后再进行截取以便节省时间。
设置数据的保存路径:勾选【Load layer after download】——点击Save File选择下载路径——OK。
注意:一定要联网才能下载成功!!!
下载好的页面:
下载好的区域通常会出现“乱码问题”。比如天书式的街道名称等等。
为了使得下载区域的乱码问题清晰地呈现出来,我们可以在图层面板中将【OSM Standard】的勾取消掉。
4.修改图层属性解决乱码问题
具体操作:右击osm point图层——属性…——源——修改图层名(按自己需要修改)——数据源编码(将数据源编码方式改成UTF-8,记得点击【Apply】)——标注——将"基于规则标注"改成"单一标注"(记得点击【Apply】)——OK。
其余的图层也是这样处理。待所有的图层处理完毕后,我们可以在图层面板中将【OSM Standard】的勾取消掉,查看所选区域是否还存在乱码问题。如果乱码问题已解决,就可以看到下图的效果:
5.通过增加建筑物高度实现三维效果
具体操作:右击osm multipolygons——打开属性表——打开字段计算器——在输出字段名称里填写floor——在表达式的空白框里输入rand(1,10)——OK。
6.Qgis2threejs插件导出并发布
具体操作:Qgis2threejs——Qgis2threejs Exporter——勾选需要的图层——osm multipolygons——Properities——Object type(将Polygon改成Extrucled)——Color(将Feature Style改成Random,这样所有建筑等会颜色各异地呈现)——Apply——OK。
三维的效果如下图所示:
7.在Qgis2threejs上导出网页资源
具体操作:File——Export to Web——勾选“Preserve the Current Viewpoint”和"Enable the Viewer to Run Locally"——在Page title填写页面名称——Export。
网页版三维数据模型的存储地址就会出现在下图中的Web page file处。双击蓝色字的存储地址即可在浏览器中打开。
8.在Qgis2threejs上导出gltf格式的模型文件
具体操作:File——Save Scene As glTF(.gltf,.glb)——保存
将导出的zhengzhoutrainstation.gltf压缩为zhengzhoutrainstation.zip。
将zhengzhoutrainstation.zip压缩包拉拽上传至gltfviewer网站( https://gltf-viewer.donmccurdy.com/)。
在gltfviewer网站看到效果如下:
9.上传至CGSCloud Portal平台
登录CGSCloud Portal平台——添加场景——新建场景——分组中找到新建的场景——编辑场景——添加模型将zhengzhoutrainstation.zip压缩包导入该场景——保存——预览。
导入成功的页面如下:
预览页面如下:
小结:
在QGIS中制作三维模型并利用Qgis2threejs发布至CGSCloud Portal平台和gltfviewer网站是常见的QGIS操作,希望大家多多动手,熟能生巧。