Zusammenfassung
Berechnet den Schnittpunkt von Multipatch-Features zur Erzeugung geschlossener Multipatches, die die überlappenden Volumina, offenen Multipatch-Features aus gemeinsamen Oberflächen bzw. Linien aus den schneidenden Kanten umfassen.
Abbildung

Verwendung
Gehen Sie bei der Festlegung der Daten für diese Analyse vorsichtig vor. Für sehr detaillierte Features werden möglicherweise äußerst komplexe Geometrien erstellt, die die Darstellungs-Performance aufgrund der Anzahl von Stützpunkten und der Ausrichtung beeinträchtigen können.
Bei einer einzelnen Eingabe wird der Schnittpunkt von Features in dem Multipatch-Dataset ausgewertet. Bei zwei Eingaben wird der Schnittpunkt von Features aus beiden Datasets bestimmt, und Schnittpunkte, die nur in einer Eingabe gefunden werden, werden ignoriert.
Syntax
arcpy.ddd.Intersect3D(in_feature_class_1, out_feature_class, {in_feature_class_2}, {output_geometry_type})
Parameter | Erklärung | Datentyp |
in_feature_class_1 | Die Multipatch-Features, die überschnitten werden. Wenn nur ein Eingabe-Feature-Layer oder eine Eingabe-Feature-Class bereitgestellt wird, gibt die Ausgabe den Schnittpunkt der eigenen Features an. | Feature Layer |
out_feature_class | Die Feature-Class, die von diesem Werkzeug erstellt wird. | Feature Class |
in_feature_class_2 (optional) | Der optionale zweite Multipatch-Feature-Layer bzw. die optionale zweite Multipatch-Feature-Class für die Überschneidung mit dem bzw. der ersten. | Feature Layer |
output_geometry_type (optional) | Bestimmt den Typ der Schnittpunktgeometrie, der erstellt wird.
| String |
Codebeispiel
Intersect3D – Beispiel 1 (Python-Fenster)
Anhand des folgenden Beispiels wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.
import arcpy
from arcpy import env
env.workspace = 'C:/data'
arcpy.Intersect3D_3d('inMultipatch1.shp', 'outMultipatch.shp',
'inMultipatch2.shp')
Intersect3D – Beispiel 2 (eigenständiges Skript)
Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.
'''****************************************************************************
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)
Umgebungen
Lizenzinformationen
- Basic: Erfordert 3D Analyst
- Standard: Erfordert 3D Analyst
- Advanced: Erfordert 3D Analyst