导入 3D 对象 (数据管理)

摘要

可从一种或多种 3D 文件格式导入 3D 模型并创建或更新 3D 对象要素图层。

使用情况

  • 3D 对象要素类提供了一种使用 3D 模型的本机渲染功能(例如灯光效果、反射率和材质)以在 ArcGIS Pro 中存储、地理配准和可视化 3D 模型的方法。 .

    了解有关 3D 对象要素图层的详细信息

  • 3D 对象要素类的几何可用于任何支持多面体要素的地理处理工具。 例如,3D 对象要素图层可用于分析视线可见性中的视线,或确定太阳阴影频率太阳阴影体积中阴影的影响。

  • 使用此工具,您可以直接创建 3D 对象要素图层,而无需将 3D 模型导入多面体或修改多面体以使用 3D 对象要素图层功能进行增强。 该工具还支持比导入 3D 文件工具更多的 3D 模型格式。 可以导入以下 3D 格式:

    • COLLADA (.dae)
    • 工程图(.dwg)
    • Autodesk Filmbox (.fbx)
    • 图形库传输(.glb)
    • JSON 图形库传输(.gltf)
    • 工业基础类(.ifc)
    • Wavefront 对象(.obj)
    • 通用场景描述(.usdc)
    • 压缩通用场景描述 (.usdz)
  • 创建新的 3D 对象要素类并且导入的模型具有空间参考时,3D 对象要素类将继承模型的坐标系。 如果您导入的模型没有坐标系,则输出的坐标系将为 WGS 1984 Web Mercator (WKID 3857),使用米的线性单位。 如果 3D 模型具有线性单位,其坐标将自动转换以匹配输出投影。 当 3D 模型没有定义线性单位时,可以使用比例因子(在 python 中为 scale)参数来应用适当的转换。

参数

标注说明数据类型
输入 3D 文件和文件夹

将导入的 3D 文件或包含 3D 文件的文件夹。 提供文件夹后,将导入其中包含的所有受支持的 3D 模型及其子目录。

支持以下模型:

  • COLLADA (.dae)
  • 工程图(.dwg)
  • Autodesk Filmbox (.fbx)
  • 图形库传输(.glb)
  • JSON 图形库传输(.gltf)
  • 工业基础类(.ifc)
  • Wavefront 对象(.obj)
  • 通用场景描述(.usdc)
  • 压缩通用场景描述 (.usdz)
File; Folder
输出 3D 对象要素类

将创建或更新的 3D 对象要素图层。

Feature Layer
更新策略
(可选)

指定如何处理现有 3D 对象要素类。

  • 替换所有现有型号3D 对象要素类中的所有现有要素都将被删除,并且仅添加指定为输入的 3D 模型。
  • 仅更新现有模型3D 对象要素类中存在的 3D 模型将被更新。 新模型将被跳过。
  • 更新现有模型并添加新模型3D 对象要素类中存在的 3D 模型将被更新并附加新模型。 这是默认设置。
  • 添加所有型号将添加所有 3D 模型,而不替换 3D 对象要素类中当前存在的任何模型。
String
XY 偏移
(可选)

将应用于导入模型的 x 和 y 坐标偏移。

Point
高程偏移
(可选)

将应用于导入模型的高度偏移。

Double
比例因子
(可选)

将用于调整导入的 3D 模型大小的比例因子。

Double
旋转角度
(可选)

将应用于导入模型的旋转角度度数。 应用旋转时假设 0° 代表北,角度值按顺时针方向递增。

Double

arcpy.management.Import3DObjects(files_and_folders, updated_features, {update}, {translate}, {elevation}, {scale}, {rotate})
名称说明数据类型
files_and_folders
[files_and_folders,...]

将导入的 3D 文件或包含 3D 文件的文件夹。 提供文件夹后,将导入其中包含的所有受支持的 3D 模型及其子目录。

支持以下模型:

  • COLLADA (.dae)
  • 工程图(.dwg)
  • Autodesk Filmbox (.fbx)
  • 图形库传输(.glb)
  • JSON 图形库传输(.gltf)
  • 工业基础类(.ifc)
  • Wavefront 对象(.obj)
  • 通用场景描述(.usdc)
  • 压缩通用场景描述 (.usdz)
File; Folder
updated_features

将创建或更新的 3D 对象要素图层。

Feature Layer
update
(可选)

指定如何处理现有 3D 对象要素类。

  • REPLACE_ALL3D 对象要素类中的所有现有要素都将被删除,并且仅添加指定为输入的 3D 模型。
  • UPDATE_EXISTING3D 对象要素类中存在的 3D 模型将被更新。 新模型将被跳过。
  • UPDATE_EXISTING_ADD_NEW3D 对象要素类中存在的 3D 模型将被更新并附加新模型。 这是默认设置。
  • ADD_ALL将添加所有 3D 模型,而不替换 3D 对象要素类中当前存在的任何模型。
String
translate
(可选)

将应用于导入模型的 x 和 y 坐标偏移。

Point
elevation
(可选)

将应用于导入模型的高度偏移。

Double
scale
(可选)

将用于调整导入的 3D 模型大小的比例因子。

Double
rotate
(可选)

将应用于导入模型的旋转角度度数。 应用旋转时假设 0° 代表北,角度值按顺时针方向递增。

Double

代码示例

Import3DObjects 示例(Python 窗口)

以下 Python 窗口脚本演示了如何使用 Export3DObjects 函数。

import arcpy
arcpy.env.workspace = 'C:/data'
arcpy.management.Import3DObjects("city_models", "Buildings.gdb/imported_models", 
                                 scale = 3.28)

许可信息

  • Basic: 否
  • Standard: 是
  • Advanced: 是

相关主题