如何导入三维模型

ArcGIS软件支持导入的三维模型格式

高级版CityEngine支持导入 .dae、.dxf、.gdb、.kml、.kmz、.obj、.osm、.fbx、.shp。
ArcMap和ArcGIS Pro支持导入.3ds、.wrl、.skp、.flt、.dae。

了解软件支持导入的格式很重要,很多用户将数据导出为.3ds格式,ArcMap和ArcGIS Pro支持导入,但是CityEngine不支持。DAE是非常有用的格式,因为它是建立在一个开放的标准XML模式之上的,支持网格几何元和纹理。

如果要在ArcGIS平台中使用这些格式的模型,那么需要先将这些模型转为Multipatch(多面体)或Shapefile格式。Multipatch可以保存模型纹理信息,Shapefile格式不支持存储纹理。点击这里查看Multipatch的详细介绍。

将三维模型转换为Multipatch,有三种方法:

  • 将模型直接转为Multipatch。适合于处理大量的具有正确位置的三维模型。
  • 编辑状态下替换模型。适合于新内容的创建或现有多面体的交互式更新。
  • 将符号化点转为Multipatch。适用于数量较少的不具有正确位置的三维模型。还适用于使用重复符号进行 3D 渲染的图层,例如包含少量住宅模型的计划建筑区域。

1、将模型直接转为Multipatch

最快的方法是直接使用GP工具Import 3D Files(导入3D文件)。


此工具可以指定模型的坐标系,如果不知道模型的坐标系是什么,建议设置Web Mercator坐标系。如果不指定坐标系,结果Multipatch的坐标系是Unknown,Pro场景中不能显示Unknown坐标系的数据。

不论三维模型的实际位置是否正确,导入到Pro后,Multipatch都在(0,0)的位置。


扫描二维码关注公众号,回复: 1949857 查看本文章

这是一个已知问题。NIM099771 -Using the Import 3D Files tool with the placement points parameter to define a spatial reference places all models at 0,0 instead of on the points.

使用Import 3D Files导入模型时,可以使用点要素类指定模型的实际位置。如果点要素类的坐标系是Web Mercator,那么此工具中的坐标系参数就定义Web Mercator,也就是坐标系参数需要和点要素的空间参考相匹配。点要素类中还需要有个文本型字段,存储各点相关联的 3D 模型的名称。点的高程值是地面的实际高程值。

结果有一半模型被埋在地下了。当我们在Import 3D Files中指定具体位置时,模型的中心会放置在这个点上。

修改点的高程值,模型浮上来了……

也可以使用Move to修改Multipatch的位置。

2、编辑状态下替换模型

Replace Multipatch从工具名就可以看出,只适用于多面体要素。

3、将符号化点转为Multipatch

详细可参考ArcGIS Pro中如何将点替换为3D模型

关于纹理

很多问题都是关于纹理丢失,先说几点注意事项:

  • 1)模型需导出为Multipatch格式存储在.gdb(文件型地理数据库)中,才能保留纹理信息。
  • 2)3ds不能存储纹理,纹理图片需要和3ds放在同一文件夹中。
  • 3)wrl的纹理数据要放在wrl上层目录的maps文件夹中,使用Import 3D Files导入时,需勾选Y is Up。10.1及10.2.1导入wrl不能保留纹理是已知问题。Bug NIM098234 Import 3D File does not import textures from wrl file created using Geomagic. 10.5.1版本中测试已修复。
  • 4)obj及其贴图的路径及文件名尽量避免中文、特殊符号。


常见问题汇总:

sketchup模型导入CityEngine中部分纹理丢失
模型自3ds Max导出成OBJ纹理丢失或发生变化
ArcGIS Pro2.0打开3D模型显示很模糊
如何使用ArcScene导入.3ds(3ds Max导出文件)才能正常显示?
10.2版本导入3Dmax模型异常
有3dsmax源文件,想发布成服务,让别人来调用
ArcGIS Pro中发布3ds模型后,在Portal中丢失纹理



最后一句,ArcGIS Pro2.2版本中支持贴图啦,欢迎围观。


参考及扩展阅读:

  1. CityEngine支持导入的格式

  2. Import 3D Files

  3. 如何将现有 3D 模型导入到多面体要素类中

  4. FAQ: How do I Import existing 3D modeling data?

  5. 根据模型创建带纹理的建筑物

  6. Apply textures to a multipatch feature

猜你喜欢

转载自blog.csdn.net/ceibake/article/details/80932363