城市三维模型数据共享与可视化教程
对于建筑规划的学生和员工来说,在制定计划时需要进行前期的现场分析,设计模型完成后,需要与周边环境的城市白色模型相匹配。但是,需要手动生成大量的城市三维模型意味着大量的细节和工作量,即使熬夜加班也不能取得好的效果,越来越高的发际线不断提醒林北的头发是假的!
有没有办法快速解决它们,让我们低效地告别?让我们先看看下面的视频。
看到上面的视频,朋友们一定很好奇这么大规模的城市模型是如何快速建立的,3D城市动态展示是如何建立的。
别担心,告诉你!
读完这篇文章你会学会的:
1.快速获取城市模型(su/rhino/3ds可读)
第一步:ArcGIS+FME。
第二步:ArcGIS+SketchUp6Esri插件。
第三步:Cadmapper网站。
第四步:ArcGIS+Rhino+Grasshopper+Excel。
第五步:ArcGIS直接导出。
2.城市模型3D地图的综合可视化。
第一步:基于EchartsGL的三维可视化。
第二步:根据高德定制地图。
学习这些,什么样的周边场景建模,什么样的分析图画法已经不成问题了!比如sasaki风格的场景分析图,2.5D的分析图都很容易,甚至我们可以用动态的视频来展示城市数据。
朱振亿:说这些方法不好用的人都是假的,真正用过的人已经不在了。
小黄鸭:Emm..
快速获取城市模型。
在介绍方法之前,我们需要准备好城市建筑的轮廓数据(带有楼层数量或建筑高度字段的矢量数据)ArcGIS和CAD文件可以,如下图所示。
没关系!
本文末尾分享了北京、上海、重庆和郑州的城市建筑轮廓数据。
此外,我们还将介绍几种不需要使用建筑轮廓数据的方法。
那我们来看看!
第一步:ArcGIS+FME。
建议指数:★★★。
第一步。
打开ArcMap或ArcScene中的建筑轮廓数据。
查看图层属性字段。如果没有高度字段,而是楼层Floor字段,需要创建新的height字段。
右键height,打开字段计算器,楼层高度3m,height=[Floor]*3,得到属性表。
事实上,这一步已经结束了,但是我们不妨在ArcScene中拉伸之后预览一下。
右键层,单击属性,打开后选择拉伸选项勾选拉伸层中的元素,然后将拉伸值表达部分改为合适的比例。
效果如下。
第二步。
下载并安装在http://www.fme-china.com上的FME软件,打开FMEWorkbench,总共可以使用以下三种工具。
单击阅读模块,添加格式和数据集。
再次选择Extruder转换器,将Extruder参数中的方向垂直,距离选择height属性:
最后,添加写作模块,选择TrimbleSketchUp格式和文件夹名称(如果您想保存为3ds文件,请选择相应的格式)。用鼠标连接Extruded和输出模块。
单击工具栏中的的运行按钮,等到转换日志显示translationwassuccessful时,相应的skp文件就会出炉!
朱振亿:方法简便,耗时短,易于大批量生成。
第二步:ArcGIS+SketchUp6Esri插件。
建议指数:★★★。
第一步。
安装SketchUp6Esri插件,需要ArcGIS版本,朋友需要按照相应版本安装。
第二步。
加载矢量地图后,在Arcmap中选择需要转换的元素,点击SketchUp6图标,在弹出窗口中选择相应的高度字段和保存路径,然后自动转换并打开SketchUp。
朱振亿:可能会出现没有高度或高度相同的情况,对ArcGIS版本的要求也很麻烦。
第三步:Cadmapper网站。
建议指数:★★★。
第一步。
在https://cadmapper.com/中注册账户,点击Signin选择格式、版本和下载元素。
第二步。
点击地图上的区域下载。
朱振亿:数据来源是OSM,CAD文件和SU文件可以在cadmapper上同时下载,但只支持少量国内城市区域模型下载,选择1平方公里以下时免费。另外,OSM数据可以直接在官网下载后修改导入SU安装目录,也可以通过SuPlaceMaker插件下载。在CityEngine软件中,甚至可以显示OSM带地图的3D模型。
第四步:ArcGIS+Rhino+Grasshopper+Excel。
建议指数:★★。
第一步。
在Arcmap中加载建筑轮廓矢量数据后,全选底图,点击工具箱中的数据管理工具-元素-元素折点转点,得到折点后打开折点属性表,再点击元素-添加XY坐标后,全选元素导出属性表txt文本。
第二步。
复制文本并在Excel中分列后,打开Rhino和grasshopper,输入Excel行数。
第三步。
设置exturde组)设置exturde操作器,在犀牛中生成模型,可以随意导出各种格式的文件。
朱振亿:步骤太多,对那些不会grasshopper的人来说太不友好了,根本学不会啊。
小黄鸭:其实我也不太会,那么复杂为什么不用FME呢?
第五步:ArcGIS直接导出。
建议指数:★。
第一步。
和方法1的步骤一样。
第二步。
在Arcscene中使用3D层转换元素工具后,文件被转换成三维格式。打开新的图层属性表,选择所有元素后,打开编辑器合并。
第三步。
转换collada格式,可以用3Dmax打开。
朱振亿:导出的多个文件夹每个文件夹只有一个模型文件,非常麻烦,不推荐。
朱振亿:方法不错是不错的,但是白模啊。
小黄鸭:稍稍改变下线型和颜色就能做出漂亮的分析图,作为建筑周围的环境更是绰绰有余鸭,还有什么自行车呢?
朱振亿:还是不太满意,有没有办法不用做模型就能很炫酷?
小黄鸭:Emm...真的。
我们来介绍一下城市模型3D地图的综合可视化操作。
城市模型3D地图的综合可视化。
第一步:基于EchartsGL的三维可视化。
第一步。
打开Arcmap中的建筑轮廓数据,添加value字段,value值可等于floor层数。
打开相应的城市道路数据,添加name字段和value字段,其中name字段值可以设置为id值,value值可以根据道路等级设置不同的宽度。
第二步。
在mapshaper网站上将更改后的shp文件分别转换为相应的geojson文件,使用subline等软件打开,可获得带坐标的矢量数据。
第三步。
打开我们提供的可视化文件的data文件夹。
在building.js文件中替换geojson建筑轮廓数据中的文本,同样,在route.js中替换已转换的道路数据。
再次打开html文件即可获得视频中的三维城市模型图,看着路线不断变换,是不是很有成就感?
这种方法还可以通过连接POI数据来改变不同兴趣场所的建筑颜色,至于有没有可能把图中的路线换成代表车流、人流等数据,小伙伴们学会了可以自己去研究。
第二步:根据高德定制地图。
第一步。
在高德开发平台注册用户后,选择定制地图。
第二步。
在3D地图上设置各种建筑和道路元素,改变自己喜欢的风格和颜色!