Подпись | Описание | Тип данных |
Входные 3D-файлы или 3D-папки | 3D-файлы или папки, содержащие 3D-файлы, которые будут импортированы. При выборе папки будут импортированы все поддерживаемые 3D-модели, содержащиеся в ней и ее подкаталогах. Поддерживаются следующие модели:
| File; Folder |
Выходной класс пространственных объектов 3D-объектов | Векторный слой 3D-объектов, который будет создан или обновлен. | Feature Layer |
Стратегия обновления (Дополнительный) | Определяет, как будет обновляться существующий векторный класс 3D-объектов.
| String |
XY смещение (Дополнительный) | Смещение x- и y-координаты, которое будет применяться к импортированным моделям. | Point |
Смещение высоты (Дополнительный) | Смещение по высоте, которое будет применяться к импортированным моделям. | Double |
Масштабный коэффициент (Дополнительный) | Коэффициент масштабирования, который будет использоваться для изменения размера импортируемых 3D-моделей. | Double |
Угол поворота (Дополнительный) | Угол поворота в градусах, который будет применяться к импортированным моделям. Поворот применяется с учетом того, что ноль градусов (0°) обозначает север, а угловые значения увеличиваются по часовой стрелке. | Double |
Y наверху, если не указано в данных | Указывает, будут ли координаты y интерпретироваться как высота или как горизонтальная плоскость. Этот параметр поддерживается только для файлов Wavefront Object (.obj).
| Boolean |
Краткая информация
Импортирует 3D-модели из одного или нескольких форматов 3D-файлов или обновляет векторный слой 3D-объектов.
Использование
Векторный класс 3D-объектов предоставляет способ хранить, назначать географическую привязку и визуализировать 3D-модели в ArcGIS AllSource с помощью встроенных возможностей отображения, таких как световые эффекты, отражение и материалы.
Геометрия векторного класса 3D-объектов может быть использована в любом инструменте геообработки, поддерживающем объекты-мультипатч. Например, векторный слой 3D-объектов может использоваться для анализа линий видимости в инструментах Линия видимости и Взаимная видимость, или определить влияние теней в инструментах Частота затенения и Объемный теневой объект.
С помощью этого инструмента можно создавать векторные слои 3D-объектов напрямую, без необходимости импортировать 3D-модели в мультипатч или усовершенствовать мультипатч для расширения возможностей векторных слоев 3D-объектов. Этот инструмент также поддерживает больше форматов 3D-моделей, чем инструмент Импорт 3D-файлов. Можно импортировать следующие 3D-форматы:
- COLLADA (.dae)
- Рисунок (.dwg)
- Autodesk Фильмбокс (.fbx)
- Передача графической библиотеки (Graphics Library Transmission) (.glb)
- Передача графической библиотеки JSON (JSON Graphics Library Transmission) (.gltf)
- Industry Foundation Class (.ifc)
- Wavefront Object (.obj)
- Универсальное описание сцены (.usdc)
- Сжатое универсальное описание сцены (.usdz)
Если создается векторный класс 3D-объектов и импортируемые модели имеют пространственную привязку, то векторный класс 3D-объектов наследует систему координат моделей. Если импортируемые модели не имеют системы координат, то в качестве системы координат на выходе будет использоваться WGS 1984 Web Mercator (WKID 3857), в которой используются линейные единицы измерения - метры. Если 3D-модели имеют линейные единицы измерения, то ее координаты будут автоматически преобразованы для соответствия выходной проекции. Когда у 3D-моделей нет заданных линейных единиц, параметр Коэффициент масштабирования может использоваться для применения соответствующего преобразования.
Параметры
arcpy.management.Import3DObjects(files_and_folders, updated_features, {update}, {translate}, {elevation}, {scale}, {rotate}, y_is_up)
Имя | Описание | Тип данных |
files_and_folders [files_and_folders,...] | 3D-файлы или папки, содержащие 3D-файлы, которые будут импортированы. При выборе папки будут импортированы все поддерживаемые 3D-модели, содержащиеся в ней и ее подкаталогах. Поддерживаются следующие модели:
| File; Folder |
updated_features | Векторный слой 3D-объектов, который будет создан или обновлен. | Feature Layer |
update (Дополнительный) | Определяет, как будет обновляться существующий векторный класс 3D-объектов.
| String |
translate (Дополнительный) | Смещение x- и y-координаты, которое будет применяться к импортированным моделям. | Point |
elevation (Дополнительный) | Смещение по высоте, которое будет применяться к импортированным моделям. | Double |
scale (Дополнительный) | Коэффициент масштабирования, который будет использоваться для изменения размера импортируемых 3D-моделей. | Double |
rotate (Дополнительный) | Угол поворота в градусах, который будет применяться к импортированным моделям. Поворот применяется с учетом того, что ноль градусов (0°) обозначает север, а угловые значения увеличиваются по часовой стрелке. | Double |
y_is_up | Указывает, будут ли координаты y интерпретироваться как высота или как горизонтальная плоскость. Этот параметр поддерживается только для файлов Wavefront Object (.obj).
| Boolean |
Пример кода
В следующем примере показано использование этого инструмента в окне Python.
import arcpy
arcpy.env.workspace = 'C:/project_directory'
arcpy.management.Import3DObjects("import_models",
"city_models.gdb/Downtown_Buildings",
update="ADD_ALL", translate="50 100.5",
elevation=-52.73, scale=0.3048, rotate=15.25)
В следующем примере показано использование этого инструмента как автономного скрипта Python.
import arcpy
arcpy.env.workspace = 'C:/project_directory'
# Export the feature class or layer to model files on disk
arcpy.management.Export3DObjects("city_models.gdb/Downtown_Buildings",
"exported_models", ["FMT3D_IFC"])
# Optionally, edit the exported model files in other software, or replace the
# files with a new version.
# Keep the file names the same to update existing features. New file names are
# interpreted as new features.
# The input folder and feature class or layer in Import 3D Objects are the same
# values used in Export 3D Objects.
arcpy.management.Import3DObjects("exported_models",
"city_models.gdb/Downtown_Buildings",
update="UPDATE_EXISTING_ADD_NEW",
translate="350 150",
elevation=100, scale=2.54, rotate=-90)