3D-Dateien importieren (3D Analyst)

Zusammenfassung

Hiermit wird mindestens ein 3D-Modell in eine Multipatch-Feature-Class importiert.

Verwendung

  • Behalten Sie die Textur in den 3D-Modellen bei, indem Sie das Ausgabe-Multipatch in einer Geodatabase speichern. Shapefiles unterstützen die Beibehaltung von Texturen nicht.

  • Falls die obere Seite der entstehenden Multipatch-Features seitwärts ausgerichtet ist, können Sie die Ausrichtung anpassen, indem Sie dieses Werkzeug mit aktiviertem Parameter Y oben erneut verwenden.

  • GeoVRML ist das einzige Format mit einem definierten Koordinatensystem. Viele 3D-Modelle werden mit lokalen Koordinatensystemen generiert, deren XYZ-Achse um 0, 0, 0 zentriert ist. Solche Features können mit einer der folgenden Methoden mit realen Koordinaten georeferenziert werden:

    • Müssen die 3D-Modelle gedreht und verschoben werden, sollten Sie die Verfahren der räumlichen Anpassung anwenden, um die Features ordnungsgemäß zu positionieren.
    • Wenn die 3D-Modelle für ein bestimmtes Koordinatensystem ordnungsgemäß ausgerichtet sind und nur in die richtige Position verschoben werden müssen, passen Sie die Koordinatensystem-Eigenschaften so an, dass die notwendige Verschiebung erfolgt. Wenn Punkt-Features, die die Position des Schwerpunktes der einzelnen Modelle in realen Koordinaten definieren, verfügbar sind, verwenden Sie die Punkte als Eingaben für das Werkzeug, um die Modelle zu georeferenzieren.
  • Punkt- und Liniengeometrien, die in einer 3D-Datei vorhanden sein können, bleiben in der Ausgabe-Multipatch-Feature-Class nicht erhalten, da sie von Multipatches nicht unterstützt werden.

    Hinweis:

    Nicht unterstützte Geometrietypen für VRML-Dateien sind: Box, Kegel, Zylinder, Extrusion, PointSet, Kugel und Text.

Syntax

arcpy.3d.Import3DFiles(in_files, out_featureClass, {root_per_feature}, {spatial_reference}, {y_is_up}, file_suffix, {in_featureClass}, {symbol_field})
ParameterErklärungDatentyp
in_files
[in_files,...]

Ein oder mehrere 3D-Modelle oder Ordner mit solchen Dateien in den unterstützten Formaten 3D Studio Max (*.3ds), VRML und GeoVRML (*.wrl), OpenFlight (*.flt), COLLADA (*.dae) und Wavefront OBJ-Modelle (*.obj).

File; Folder
out_featureClass

Das Multipatch, das aus den Eingabedateien erstellt wird.

Feature Class
root_per_feature
(optional)

Gibt an, ob ein Feature pro Datei oder ein Feature für jeden Stammknoten in der Datei generiert werden soll. Diese Option gilt nur für VRML-Modelle.

  • ONE_ROOT_ONE_FEATUREDie generierte Ausgabe enthält ein Feature für jeden Stammknoten in der Datei.
  • ONE_FILE_ONE_FEATUREDie generierte Ausgabe enthält eine Datei für jedes Feature. Dies ist die Standardeinstellung.
Boolean
spatial_reference
(optional)

Das Koordinatensystem der Eingabedaten. Für die meisten Formate ist dies unbekannt. Nur beim GeoVRML-Format wird das Koordinatensystem gespeichert. Der Standardwert wird aus der ersten Datei in der Liste abgerufen, wenn hier kein Raumbezug angegeben ist.

Spatial Reference
y_is_up
(optional)

Gibt die Achse an, welche die vertikale Ausrichtung der Eingabedateien definiert.

  • Z_IS_UPGibt an, dass der Z-Wert vertikal ist. Dies ist die Standardeinstellung.
  • Y_IS_UPGibt an, dass der Y-Wert vertikal ist.
Boolean
file_suffix

Die Dateierweiterung der Dateien, die aus einem Eingabeordner importiert werden sollen. Dieser Parameter ist erforderlich, wenn als Eingabe mindestens ein Ordner angegeben wird.

  • *Alle unterstützten Dateien. Dies ist die Standardeinstellung.
  • 3DS3D Studio Max
  • WRLVRML oder GeoVRML
  • FLTOpenFlight
  • DAECollada
  • OBJWavefront OBJ-Modell
String
in_featureClass
(optional)

Die Punkt-Features, deren Koordinaten die reale Position der Eingabedateien definieren. Jeder Eingabedatei wird basierend auf den Dateinamen im Symbolfeld der entsprechende Punkt zugeordnet. Der Parameter Koordinatensystem sollte in Übereinstimmung mit dem Raumbezug der Punkte definiert werden.

Feature Layer
symbol_field
(optional)

Das Feld in den Punkt-Features, das für jeden Punkt den Namen der zugeordneten 3D-Datei enthält.

Field

Codebeispiel

Import3DFiles – Beispiel 1 (Python-Fenster)

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

arcpy.env.workspace = "C:/data"
arcpy.Import3DFiles_3d("AddisSheraton.skp", "Test.gdb/AddisSheraton", False, "", False)
Import3DFiles – Beispiel 2 (eigenständiges Skript)

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

'''****************************************************************************
Name: Import3DFiles Example
Description: This script demonstrates how to use the
             ListFiles method to collect all OpenFlight (*.flt) models in a
             workspace as input for the Import3DFiles tool.
****************************************************************************'''

# Import system modules
import arcpy

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

# Set Local Variables
OpenFlightList = arcpy.ListFiles("*.flt")
CS = "Coordinate Systems/Geographic Coordinate Systems/World/WGS 1984.prj"
outputFC = "Test.gdb/OpenFlight_Models"
if len(OpenFlightList) > 0:
    # Execute Import3DFiles
    arcpy.Import3DFiles_3d(OpenFlightList, outputFC, False, CS, False)
else:
    # Returned if there are no flt files in the target workspace
    print("There are no OpenFlight files in the " + env.workspace + " directory.")

Lizenzinformationen

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

Verwandte Themen