查看原文
其他

【附练习数据】ArcGIS中二维面生成三维模型+三维模型转体+三维爆炸分析

张翀 GIS前沿 2021-04-29

本文分三部分

  1. 在ArcGIS中由建模面矢量生成三维建模型

  2. 以Sketchup为例将所生成的模型转换为ArcGIS所支持的模型

  3. ArcGIS中做三维爆炸分析

文末有本文相关练习数据


- 1 -


【问题1】

现有二维建筑物面Shapefile数据,如何生成ArcGIS格式的三维建筑物体数据? 


【方法】

使用ArcGIS中【Layer3DToFeatureClass】(3D图层转要素类)工具实现。注:该工具适用于生成规则的体数据,二维数据中必须具有高度字段以作为三维高度坐标。对于具有复杂结构的建筑,需要借助三维建模软件进行三维建模,并将该模型数据导入ArcGIS得到ArcGIS支持的体数据。

三维建模软件如CityEngine、Sketchup、AutoDesk 3Ds Max等。 


【实验步骤】 

1)查看二维建筑物面数据。打开ArcScene软件,加载二维建筑物面数据buildings.shp。打开属性表,“height”字段即为每个建筑面数据对应的高度值。


图1.1 二维建筑物面数据


图1.2 建筑物属性表


2)拉伸显示建筑物。按照“height”字段,使用拉伸方式对二维建筑物进行三维可视化。右击建筑物图层,打开【属性】对话框,选择【拉伸】选项卡。勾选“拉伸图层中的要素”,打开拉伸值表达式,设置拉伸值等于“height”字段。确定,完成建筑物的三维拉伸表达。注:此时仅是该建筑物的三维表达,并未生成三维体数据。


图1.3【拉伸】设置


图1.4 设置拉伸表达式


图1.5 三维拉伸显示


3)生成三维体数据。打开【3D Analyst工具】|【转换】|【3D图层转要素类】工具,设置输入要素图层为已拉伸的建筑物图层,输出要素类为“buildings_3d.shp”。确定,完成三维体数据生成。打开结果数据属性对话框,可以在【源】选项卡下查看得到该数据几何类型为“多面体(Multipatch)”。


图1.6【3D图层转要素类】工具参数设置


图1.7 三维体数据结果


图1.8 查看结果数据几何类型


- 2 -


【问题2】

如何将三维建模软件构建的三维模型转换成ArcGIS支持的体数据? 


【方法】

使用ArcGIS中【Import3DFiles】(导入3D文件)工具实现。注:该工具支持的三维模型文件格式有skp、dae、3ds、flt、wrl。本例以Sketchup软件构建的建筑物三维模型为实例数据,转换成ArcGIS的体数据。该转换过程不包括三维模型表面的纹理数据,仅结构数据。 


【实验步骤】 

1)导出三维模型。本例以遥感影像数据为基础,创建多个建筑物三维模型后,将该三维模型导出为”buildings.dae”文件。建议在导出模型之前,将影像数据移除,否则三维模型会包含该图像数据。


图2.1 Sketchup三维建模


图2.2 导出三维模型


2)导入三维模型。打开【3D Analyst工具】|【转换】|【由文件转出】|【导入3D文件】工具,加载三维模型文件,输出多面体要素类为“buildings3d.shp”,其余参数默认。确定。


图2.3【导入3D文件】工具参数设置


图2.4 三维模型转换结果


- 3 -


【问题3】

假设城市建筑群中发生爆炸事故,爆炸直接影响范围为100米。试分析出受爆炸直接影响的建筑物。 


【方法】 

使用ArcGIS中【3D Intersect】(3D相交)工具实现。注:本例中首先需要将爆炸点直接影响的范围进行三维建模,即创建爆炸三维体数据。其次,将爆炸三维体数据与建筑物体数据进行相交分析。由于三维体数据为非实质的表面数据,因此,在分析爆炸直接影响的建筑物时,必须用相交结果进行查找。 


【实验步骤】 

1)创建爆炸点三维数据。打开ArcScene软件,加载爆炸点二维数据“views.shp”。打开【3D Analyst工具】|【3D要素】|【依据属性实现要素转3D】工具,输入要素设置为爆炸点数据,输出要素为“views3d.shp”,高度字段指定为“height”字段。确定,得到三维爆炸点数据。


图3.1 爆炸点二维数据


图3.2【依据属性实现要素转3D】工具参数设置


图3.3 爆炸点三维数据


2)三维符号化爆炸影响范围。根据爆炸的直接影响范围为100米,创建半径为100米球体符号。右击三维爆炸点数据,打开【属性】对话框,选择【符号系统】选项卡。选择符号按钮,打开【符号选择器】,选择【编辑符号】按钮打开【符号属性编辑器】。类型选择“3D简单标记符号”,样式选择“球体”,宽度和深度都设置为“100”。确定,将爆炸点三维符号化显示。在图层属性对话框【显示】选项卡中,设置透明度为“50%”。注:宽度和深度单位与地图单位一致,此例中地图单位为米。


图3.4【符号系统】选项卡


图3.5 符号选择器


图3.6 符号属性编辑器


图3.7 以50%透明度显示


图3.8 爆炸范围体三维符号


3)创建爆炸范围体数据。打开【3D Analyst工具】|【转换】|【3D图层转要素类】工具,设置输入要素图层为三维符号化的爆炸点图层,输出要素类为“explosion.shp”。确定,生成爆炸范围体数据。


图3.9【3D图层转要素类】工具参数设置


图3.10 以30%透明度显示


4)提取爆炸直接影响的建筑体数据。打开【3D Analyst工具】|【3D要素】|【3D相交】工具,设置输入多面体为“buildings_3d.shp”,另一多面体为“explosion.shp”,输出要素类为“buildings_affected.shp”。确定,得到爆炸直接影响的建筑体数据。


图3.11【3D相交】工具参数设置


图3.12 爆炸直接影响的建筑体数据


5)提取受爆炸影响的建筑物。打开【菜单栏】|【选择】|【按位置选择】工具,设置目标图层为“buildings_3d”,源图层为“buildings_affected”,空间选择方法默认“目标图层要素与源图层要素相交(3d)”。确定,得到受爆炸影响的建筑物。注:如果直接使用按位置选择工具,空间选择方法为“目标图层要素在源图层要素的某一距离范围内(3d)”,会存在错误结果。


图3.13【按位置选择】工具参数设置


图3.14 正确结果


图3.15 直接按位置选结果


进入公众号

在公众号对话框发送数字 

 0962

即可获取此文云盘下载链接



内容来源:GIS新视野
版权归原作者所有,如有侵权请联系删除


- END -

7.72GB ARCGIS  ERDAS  ENVI干货教程网盘下载

在ArcGIS中提取DEM的单元高程点

Arcgis中利用等高线生成DEM

ArcGIS软件操作基础:地图配准的方法

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存