怎么在gis生成数据图层(教程如何把GIS生成的建筑体块导出sketcup模型)
“ 上一篇讲到GIS可以直接根据字段赋值给建筑轮廓shp文件,并在ArcScene中可视化,但很多人没装GIS,做方案又更多是用Sketchup,那有没有办法可以直接导出到Sketchup中展示呢?”
先说结论:当然可以。有两种办法,一是用Google SketchUp Pro 6 GIS Plugin插件(安装在GIS平台)进行转换,另一种是直接用FME进行shp2skp的格式转换。
01 基于Google SketchUp Pro 6 GIS Plugin插件直接安装,默认设置(后台回复“转换”获取该插件和安装教程)。
需要注意的是下图显示的两个组件需要分别设置安装路径,第一个默认,第二个组件(3D Analyst SketchUp 3D Symbol Support )必须放到ArcGIS 程序的安装目录下。
安装完后需要调出菜单,以Arcmap为例,自定义-自定义模式-从文件添加-勾选“Sketchup6 Tools”,之后菜单栏就会出现个sketchup的按钮。
选取好需要生成的地块范围后,摁按钮。
在Extrude by field中选取“建筑层数”字段,设置路径,确定。
Elevate by field,可以根据某个字段将Polygon升高(相当设置Z值)。
Extrude by field,可以根据某个字段将Polygon自动拉伸成立体。
Name group using,可以用来选择一个字段来进行分组。
可以设置默认1单位=1米,或者自定义,这里我按每层3.5m输出。
导出到SU后能正确显示层高。
但缺点就是不能够一次性导出整个城市的建筑模型,因为数据量大,GIS会先崩溃,场地小的话还能凑合一下。
02 基于FME转换这个就简单很多了。
利用Extruder模块,方向选“垂直”,距离=“层数”字段*层高,这里我按照每层3.5m设置,可按需调整,不清楚的话可以打开帮助文件参考下。
只需要把“建筑轮廓shp”和设置成skp格式的“写模块”用“Extruder模块”连起来就可以了,按F5运行一下。
耗时仅1分47秒,不到两分钟就可以拉伸完14万个要素并导出skp模型。
SU中打开的效果如下,能看到全深圳的现状建筑分布。
放大看看局部,作为场地背景应该是足够的了,优点是能够一次性导出整个城市的建筑模型,运算速度快,唯一的缺点就是文件体积比较大,全深圳建筑skp大概有近300M大小,电脑配置弱的话很容易卡死。
03 总结
其实两种方法都可以成功导出SU模型,可根据具体情况选择。
为什么我这么推荐FME呢?因为它是个采用数据流理念开发的平台型软件,除了实现从A格式到B格式的转换外其内置的三四百种转换器可以对数据进行各种底层处理,底层意味着什么呢,意味着不会被GIS图形化操作的界面所拖累、让更多的计算力集中在后台运算。
举个例子,最为接近的就是GIS种的model builder理念,可以把GIS中的很多地理处理步骤整合到一起,直接运行完整个流程并输出结果,少了中间自己选路径、等上一步运行完的时间。最后可以打包成一个工具在GIS中进行调用。
所以运行上会更快、处理的数据量也更大,把数据处理运算的工作交给FME后,GIS更多的是承担可视化显示、数据建库等工作,减少GIS崩溃的情况。
欢迎关注公众号:平纸杂货铺
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com