Export 3D Objects (Data Management)

Summary

Exports 3D object features to one or more 3D model file formats.

Usage

  • Use this tool to export 3D models for use in other software that does not support the 3D object feature layer. Review the supported formats before exporting the model to ensure that the resulting files can be used.

  • When exporting to a 3D model format that has multiple standardized versions, the oldest or most popular version of the file format that supports the properties of the 3D object feature layer will be used to ensure maximum compatibility.

  • The exported 3D models can be modified in specialized 3D model editing software and converted back to a 3D object feature layer using the Import 3D Objects tool. Choose a model format that supports all the properties necessary for the data, such as animation, materials, reflectance, and other visualization artifacts. An imported dataset may not match the original exported feature if the exported model's format lacks support for a property that was present in the original 3D object feature layer.

Parameters

LabelExplanationData Type
Input Features

The 3D object feature layer that will be exported.

Feature Layer
Target Folder

The existing directory that will contain the output 3D models.

Folder
3D Formats To Export

Specifies the 3D formats that will be exported.

  • Collada (.dae)The COLLADA format will be exported.
  • Autodesk Drawing (.dwg)The DWG format will be exported.
  • Autodesk (.fbx)The Autodesk FilmBox format will be exported.
  • Khronos Group glTF binary (.glb)The binary Graphics Library Transmission format will be exported.
  • Khronos Group glTF json (.gltf)The JSON Graphics Library Transmission format will be exported.
  • Industry Foundation Classes (.ifc)The Industry Foundation Classes format will be exported.
  • Wavefront (.obj)The Wavefront format will be exported.
  • Universal Scene Description (.usdc) The Universal Scene Description format will be exported.
  • Compressed Universal Scene Description (.usdz) The compressed version of the Universal Scene Description format will be exported.
String
Output Folder Name Field
(Optional)

The text field in the input feature's attribute table that contains the name to be used for each output folder. If no name field is provided, the output folder will be named after the object ID of the input features.

Field
Overwrite output folder

Specifies whether existing 3D models in the output directory will be overwritten.

  • Checked—Existing 3D models in the output directory will be overwritten.
  • Unchecked—Existing 3D models in the output directory will not be overwritten. This is the default.
Boolean

Derived Output

LabelExplanationData Type
Output Folder

The folder containing the 3D models that were exported from the input features.

Folder

arcpy.management.Export3DObjects(in_features, target_folder, formats, {name_field}, overwrite)
NameExplanationData Type
in_features

The 3D object feature layer that will be exported.

Feature Layer
target_folder

The existing directory that will contain the output 3D models.

Folder
formats
[formats,...]

Specifies the 3D formats that will be exported.

  • FMT3D_DAEThe COLLADA format will be exported.
  • FMT3D_DWGThe DWG format will be exported.
  • FMT3D_FBXThe Autodesk FilmBox format will be exported.
  • FMT3D_GLBThe binary Graphics Library Transmission format will be exported.
  • FMT3D_GLTFThe JSON Graphics Library Transmission format will be exported.
  • FMT3D_IFCThe Industry Foundation Classes format will be exported.
  • FMT3D_OBJThe Wavefront format will be exported.
  • FMT3D_USDC The Universal Scene Description format will be exported.
  • FMT3D_USDZ The compressed version of the Universal Scene Description format will be exported.
String
name_field
(Optional)

The text field in the input feature's attribute table that contains the name to be used for each output folder. If no name field is provided, the output folder will be named after the object ID of the input features.

Field
overwrite

Specifies whether existing 3D models in the output directory will be overwritten.

  • OVERWRITEExisting 3D models in the output directory will be overwritten.
  • NO_OVERWRITEExisting 3D models in the output directory will not be overwritten. This is the default.
Boolean

Derived Output

NameExplanationData Type
target_folder_out

The folder containing the 3D models that were exported from the input features.

Folder

Code sample

Export3DObjects example (Python window)

The following Python window script demonstrates how to use the Export3DObjects function.

import arcpy
arcpy.env.workspace = 'C:/data'
arcpy.management.Export3DObjects("city_models.gdb/Downtown_Buildings", "exported_models", 
                                ["FMT3D_DAE", "FMT3D_OBJ"], "Model_Name", "OVERWRITE")
Export3DObjects example (workflow)

The following sample demonstrates the use of this tool in a stand-alone Python script:

import arcpy
arcpy.env.workspace = 'C:/project_directory'

# Create a feature layer from the 3D Object feature class
feature_class = "city_models.gdb/Downtown_Buildings"
feature_layer = os.path.basename(feature_class)
arcpy.MakeFeatureLayer_management(feature_class, feature_layer)

# Select a subset of features to export
# The default OBJECTID field is used below to process a subset of features
object_ids = '1,5,10'
sql_query = f"OBJECTID IN ({object_ids})"
arcpy.management.SelectLayerByAttribute(feature_layer, "NEW_SELECTION", sql_query)

# Export the selected features to model files on disk
arcpy.management.Export3DObjects(feature_layer, "exported_models", ["FMT3D_GLB"])
arcpy.management.Delete(feature_layer)

Related topics