ArcGIS三维建模(三)

五、Multipatch说明

1.在ArcMap中加载原始矢量数据和Multipatch数据,红色外边框的数据为Multipatch数据,下层为原始矢量图层

 

ArcGIS三维建模(三)_第1张图片

2.建立这两个数据的关联性,在目标层Multipatch层上右击,依次选择“Joins and Relates——Join”,弹出如下窗口

ArcGIS三维建模(三)_第2张图片

ArcGIS三维建模(三)_第3张图片

上图中,“2”项为属性图层,“1”和“3”项中选择属性值能够匹配的关联字段。点击“OK”后,查看关联结果如下

ArcGIS三维建模(三)_第4张图片

这一操作的目的在于通过两个图层的公共字段,为目标层关联属性表,但值得注意的是,这个属性的关联仅仅是关系上的链接,并没有对实际数据作出改动。

 

3.此时,需要在Multipatch图层上右击,选择“Data——Export Data”,将模型重新输出一次即可

ArcGIS三维建模(三)_第5张图片

ArcGIS三维建模(三)_第6张图片

单击OK,Multipatch模型要素图层就创建完毕了。

4.Multipatch模型的几个显示效果。

ArcGIS三维建模(三)_第7张图片

ArcCatalog的3D View预览

ArcGIS三维建模(三)_第8张图片

 

ArcScene展示

 

ArcGIS三维建模(三)_第9张图片

ArcGlobe展示

 

常见问题

SketchUpESRI插件不可用

安装了ArcGIS和SketchUp的插件后,在c:program filesArcGIS目录中会生成一些文件,将它们都复制到ArcGIS的目录后,由ArcGIS导出SketchUp的功能才能正常使用。经测试,ArcGIS 9.3 也可以正常使用。

ArcGIS9.3桌面环境下建模过程

SketchUp6ESRI插架是针对ArcGIS9.2定制的。目前广大用户的ArcGIS版本几乎都是ArcGIS9.3或更高级版本。该插件与ArcGIS9.3软件的兼容性和数据的兼容性成为用户关注的焦点。

下面将介绍,该插件在ArcGIS9.2与9.3这两个版本中使用的不同。

²  ArcGIS9.3桌面创建的PGDB无法被ArcGIS9.2桌面支持。

因此,在SketchUp6ESRI插件无法正常创建PGDB。首先,需要通过ArcCatalog手工创建一个PGDB,同时新建一个Multipatch的Feature Class,如下图

ArcGIS三维建模(三)_第10张图片

²  字段设置:在新建MultiPatch图层,需要设置该图层的必要字段,需要添加的字段如下图所示

 

 

序号

 

字段名称

 

字段类型

 

备注

 

1

 

SUSourceFeatureID

 

LongInteger

 

原始数据的唯一ID

 

2

 

SUSourceFeatureClass

 

Text

 

原始数据的图层名称

 

3

 

SUInstanceName

 

Text

 

在SketchUp环境中的图层名称

 

4

 

SketchUpData

 

Blob

 

可保存SketchUp的模型字段

 

 

特别说明:如果原始数据中的属性需要加载到创建的的模型中去,SUSourceFeatureID字段的建立非常有必要。

ArcGIS三维建模(三)_第11张图片

²  纹理添加,要精确到面。

在SketchUp中为模型添加纹理时,需要选中建筑物的面,逐一添加,否则在导出Multipatch数据使,纹理将不被继承。

²  空间参考



ArcGIS9.3环境下,通过SketchUp插件导出的Multipatch图层没有空间参考,需要手工添加空间参考(建议选择数据源空间参考)。否则,将无法加载到ArcGlobe的三维场景中.

ArcGIS导出SketchUp

导出SketchUp时,必须选中需要导出的矢量数据,导出时候,原始的空间参考将被带入到SketchUp环境中。

SketchUp没有导出成 mdb 格式的选择

如果使用的是 SketchUpPro 7 的话,直接打开skp文件,再先导出命令的话,里面是没有导出成*.mdb格式的选择的。将SketchUp 插件安装目录C:Program Files (x86)GoogleGoogle Sketchup 6Exporters文件夹下Skp2MP.dll和SkpWriter.dll拷贝到SketchUp Pro 7安装目录下C:Program Files(x86)GoogleGoogle SketchUp 7Exporters。

SketchUp导出时Error:Microsoft jet数据库引擎找不到输入表或查询

SketchUp 导出mdb文件时,出现“Microsoft jet数据库引擎找不到输入表或查询”的错误时,可以先用 ArcCatalog 建立一个 mdb 文件,再里面建立一个 Mulitpatch Feature Class的对象。然后在 SketchUp 中导出时直接选择这个文件和表名就可以导出模型了。

也可以通过ArcToolbox中3D Analyst Tool/Conversion/From file/Import 3D file工具,将SketchUp导入到mdb中。

SketchUp导出时Error: GeometricSpatial Reference

在 ArcMap 中的坐标系是 Unkown 或 WGS84 之类Geographic Coordinate Systems 的时候,导入到 SketchUp 中编辑再导出时会出现 Error: Geometric Spatial Reference 的错误。经测试,只有使用 Projected Coordinate Systems 才能在 SketchUp 中正常导出。

SketchUp导出时Warning:SketchUp data could not be saved with feature

在Personal Geodatabase中Multipatchfeature class需要设置该图层的必要字段,需要添加的字段如下图所示:

 

 

序号

 

字段名称

 

字段类型

 

备注

 

1

 

SUSourceFeatureID

 

LongInteger

 

原始数据的唯一ID

 

2

 

SUSourceFeatureClass

 

Text

 

原始数据的图层名称

 

3

 

SUInstanceName

 

Text

 

在SketchUp环境中的图层名称

 

4

 

SketchUpData

 

Blob

 

可保存SketchUp的模型字段

ArcGIS三维建模(三)_第12张图片

 

你可能感兴趣的:(3D,GIS)