Intersect 3D (3D Analyst)
Summary
Computes the geometric intersection of closed multipatch features to produce multipatches from the intersecting volumes, polygons from the intersecting planes, or lines from the intersecting edges.
Illustration
Usage
-
Closed multipatch geometry is required for this analysis. The Is Closed 3D tool can be used to determine if a multipatch feature class contains closed features, and the Enclose Multipatch tool can be used to eliminate gaps in multipatch features.
-
Exercise caution when determining the data used for this analysis. Highly detailed features may produce extremely complex geometries that could exhibit display performance issues on account of their total number of vertices and orientation.
-
If one input is given, the intersection of features in that multipatch dataset will be computed, whereas if two were given, the intersection of features from both datasets will be determined and intersections found in only one input get ignored.
Note:When using two input features, attributes from both features get concatenated in the output.
This tool is a 3D set operator that provides analytical functions on 3D features. See Working with 3D set operators for more information on what set operators are and how to use them.
Syntax
Parameter | Explanation | Data Type |
in_feature_class_1 |
The multipatch features that will be intersected. When only one input feature | Feature Layer |
in_feature_class_2 (Optional) |
The optional second multipatch feature class to be intersected with the first. | Feature Layer |
out_feature_class |
The output feature class. | Feature Class |
output_geometry_type (Optional) |
Determines the type of intersection geometry created.
| String |
Code Sample
The following sample demonstrates the use of this tool in the Python window:
import arcpy
from arcpy import env
env.workspace = 'C:/data'
arcpy.Intersect3D_3d('inMultipatch1.shp', 'outMultipatch.shp',
'inMultipatch2.shp')
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''****************************************************************************
Name: Intersect3D Example
Description: This script demonstrates how to use the
Intersect3D tool
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env
try:
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension('3D')
# Set environment settings
env.workspace = 'C:/data'
# Set Local Variables
inMP1 = 'Boston_MP_Small.shp'
inMP2 = 'Boston_MP.shp'
# Ensure output has a unique name
outMP = arcpy.CreateUniqueName('Intersect.shp')
# Execute Intersect 3D
arcpy.Intersect3D_3d(inMP1, outMP, inMP2)
except arcpy.ExecuteError:
print arcpy.GetMessages()
except:
# Get the traceback object
tb = sys.exc_info()[2]
tbinfo = traceback.format_tb(tb)[0]
# Concatenate error information into message string
pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
.format(tbinfo, str(sys.exc_info()[1]))
msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
# Return python error messages for script tool or Python Window
arcpy.AddError(pymsg)
arcpy.AddError(msgs)