3D-Layer in Feature-Class (3D Analyst)

Zusammenfassung

Exportiert Feature-Layer mit 3D-Anzeigeeigenschaften in 3D-Linien oder Multipatch-Features.

Verwendung

  • Prozedural-Regeln und attributgesteuerte Symbole werden von diesem Werkzeug unterstützt und im resultierenden Multipatch beibehalten.

  • Feature-Layer, deren Symbolisierung folgende Eigenschaften aufweist, werden in ein Multipatch exportiert:

    • Extrusions- oder Basishöheneinstellungen.
    • Zeichen-Markersymbole mit Tiefe.
    • 3D-Modell-Markersymbole, deren Größe in realen linearen Einheiten wie Fuß, Zoll, Meter oder Zentimeter angegeben ist. Die Farbe (einschließlich Texturfarbe) wird als einzige Materialeigenschaft der Symbolisierung für 3D-Modell-Marker berücksichtigt.
    • Bild-Markersymbole können nur in Multipatches konvertiert werden, wenn sie in einer festen räumlichen Ausdehnung angezeigt werden. Sie müssen also in realen Größeneinheiten vorliegen und können nicht mit Billboarding verwendet werden.
    • Nur Liniensymbolisierung.
    • Nur Polygon-Symbolisierung. Wenn ein Polygon-Layer ohne 3D-Ansichtseigenschaften angegeben wird, erfolgt ein Export als ein Multipatch, das dem Polygon ähnelt.
  • Dieses Werkzeug unterstützt keine Features, die durch eine der folgenden Eigenschaften symbolisiert werden:

    • Shape-Markersymbole, die aus einer Datei auf einem Datenträger stammen.
    • Gerasterte Layer, die der Oberfläche der Szene hinzugefügt wurden.
    • Shape-Markersymbole, die aus einer Schriftart stammen, jedoch über keine Tiefeneigenschaft verfügen.
    • 3D-Modell-Markersymbole, deren Größe nicht in realen linearen Einheiten wie Fuß, Zoll, Meter oder Zentimeter angegeben ist.
    • Alle Markersymbole mit Billboarding. Diese 2D-Symbole sind dynamisch so ausgerichtet, dass sie auf die Kameraposition in einer 3D-Szene weisen. Sie haben deshalb keine feste Ausrichtung, die für den Export verwendet werden kann.
  • Umgebungseinstellungen für XYZ-Toleranz und -Auflösung werden nur unterstützt, wenn die Ausgabe ein Linien-Feature ist.

Syntax

arcpy.3d.Layer3DToFeatureClass(in_feature_layer, out_feature_class, {group_field}, {disable_materials})
ParameterErklärungDatentyp
in_feature_layer

Der Eingabe-Feature-Layer, für den 3D-Anzeigeeigenschaften definiert sind.

Feature Layer
out_feature_class

Die Ausgabe-Feature-Class mit 3D-Features. Extrudierte Punkte werden als 3D-Linien exportiert. Punkte mit 3D-Symbolen, extrudierte Linien und Polygone werden als Multipatch-Features exportiert.

Feature Class
group_field
(optional)

Das Textfeld des Eingabe-Features wird verwendet, um mehrere Eingabe-Features im selben Ausgabe-Feature zusammenzuführen. Die verbleibenden Attribute der resultierenden Ausgabe werden von einem der Eingabedatensätze übernommen.

Field
disable_materials
(optional)

Gibt an, ob Farb- und Textureigenschaften beibehalten werden, wenn ein 3D-Layer in eine Multipatch-Feature-Class exportiert wird.

  • ENABLE_COLORS_AND_TEXTURESFarben und Texturen werden mit dem Multipatch beibehalten.
  • DISABLE_COLORS_AND_TEXTURESFarben und Texturen werden nicht als Teil der Multipatch-Definition gespeichert. Dies ist die Standardeinstellung.
Boolean

Codebeispiel

Layer3DToFeatureClass – Beispiel 1 (Python-Fenster)

Anhand des folgenden Beispiels wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.

arcpy.env.workspace = "C:/data"
arcpy.Layer3DToFeatureClass_3d("Points_3D.lyr", "Test.gdb/trees")
Layer3DToFeatureClass – Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.

'''****************************************************************************
Name: Layer3DToFeatureClass Example
Description: This script demonstrates how to use the
             Layer3DToFeatureClass tool to create multipatches from all
             layers in a target workspace. The layer files are assumed to have
             been saved wtih 3D rendering from ArcScene.
****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Use the ListFiles method to identify all layer files in workspace
if arcpy.ListFiles("*.lyr"):
    for lyrFile in arcpy.ListFiles("*.lyr"):
        # Set Local Variables
        outFC = "Test.gdb/{0}".format(lyrFile[:-4]) #Strips '.lyr' from name
        #Execute Layer3DToFeatureClass
        arcpy.Layer3DToFeatureClass_3d(file, outFC)
else:
    print("There are no layer files in {0}.".format(env.workspace))

Lizenzinformationen

  • Basic: Erfordert 3D Analyst
  • Standard: Erfordert 3D Analyst
  • Advanced: Erfordert 3D Analyst

Verwandte Themen