Vereinigen 3D (3D Analyst)
Zusammenfassung
Berechnet den geometrischen Schnittpunkt der Muster überlappender Multipatches und fasst die Multipatches dann zusammen. Es hängt von den Einstellungen des Werkzeugs ab, wie viele Features als Ausgabe erstellt werden.
Weitere Informationen zur Funktionsweise von "Vereinigen 3D" (3D Analyst)
Verwendung
-
Die Eingabe-Feature-Class oder der Eingabe-Layer müssen Multipatch-Geometrie aufweisen.
-
Nur geschlossene Multipatches werden verarbeitet. Alle anderen Multipatches werden übersprungen, und in das Geoverarbeitungsprotokoll wird ein Fehler geschrieben. Verwenden Sie das Geoverarbeitungswerkzeug Ist geschlossen, um festzustellen, ob einige Features nicht geschlossen sind.
-
Mit "Vereinigen 3D" können sehr große und komplexe Features in der Ausgabe-Feature-Class erstellt werden. Diese Features können zu Anzeigeproblemen führen oder Performance-Einbußen bei der Darstellung zur Folge haben. Überlegen Sie sorgfältig, wie viele Features Sie zusammenfassen.
-
In der Ausgabe-Feature-Class sind keine Attribute der Eingabe-Feature-Class enthalten. Eine optionale Tabelle kann erstellt werden, in der aufgezeichnet wird, welche Features zu einem neuen Feature vereinigt wurden.
"Vereinigen 3D" ist ein 3D-Gruppenoperator im Toolset "3D-Features". Weitere Informationen zu Gruppenoperatoren und ihrer Verwendung finden Sie unter Arbeiten mit 3D-Gruppenoperatoren.
Syntax
Parameter | Erläuterung | Datentyp |
in_feature_class |
Die geschlossenen Multipatch-Features für die Überschneidung und Zusammenfassung. | Features |
group_field (optional) |
Das Feld, das verwendet wurde, um Eingabe-Multipatch-Features zu gruppieren und dann zusammenzufassen. | Field |
out_feature_class |
Die Multipatch-Feature-Class, in die die zusammengefassten Multipatches eingefügt werden. | Feature Class |
out_table (optional) |
Eine n:1-Tabelle, in der die Eingabe-Features und die Ausgabe-Features dargestellt werden, in die sie zusammengefasst wurden. | Table |
disable_optimization (optional) |
Deaktiviert die Optimierung, die automatisch ermittelt, welche Multipatch-Features sich überschneiden, und vereinigt nur die Features mit Überschneidungen.
| Boolean |
output_all (optional) |
Wenn diese Option für das Werkzeug ausgewählt ist, müssen alle Eingabe-Features als Ausgabe-Features geschrieben werden. Features ohne Überschneidungen werden unverändert in die Ausgabe geschrieben. Überlappende Features werden vereinigt und dann in die Ausgabe geschrieben.
| Boolean |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion Vereinigen 3D im unmittelbaren Modus verwenden.
import arcpy from arcpy import env arcpy.CheckOutExtension('3D') env.workspace = 'C:/data' arcpy.Union3D_3d('multipatch.shp', 'union_output.shp', 'GROUP_FIELD', 'DISABLE', 'ENABLE', 'UnionTable.dbf')
Das folgende Python-Skript veranschaulicht, wie Sie die Funktion Vereinigen 3D in einem eigenständigen Skript verwenden.
'''**************************************************************************** Name: Union3D Example Description: This script demonstrates how to use the Union3D tool. ****************************************************************************''' # Import system modules import arcpy import exceptions, sys, traceback from arcpy import env try: arcpy.CheckOutExtension('3D') # Set environment settings env.workspace = 'C:/data' # Set Local Variables inMP = "multipatch.shp" # Ensure output multipatch has a unique name outMP = arcpy.CreateUniqueName("union_output.shp") outTbl = arcpy.CreateUniqueName("UnionTable.dbf") GroupField = "Type" optimize = "DISABLE" solids = "ENABLE" #Execute Union3D arcpy.ddd.Union3D(inMP, outMP, GroupField, optimize, solids, outTbl) arcpy.CheckInExtension('3D') 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)