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

Zusammenfassung

Dient zum Importieren von 3D-Features aus einer oder mehreren ASCII-Dateien, die in den Formaten "XYZ", "XYZI" oder "GENERATE" gespeichert sind, in eine neue Feature-Class.

Abbildung

3D-ASCII in Feature-Class – Beispiel

Verwendung

  • Alle Eingabedateien müssen das gleiche Format und den gleichen Geometrietyp aufweisen.

  • XYZ- und XYZI-Formate unterstützen Kopfzeilen und behandeln die erste Zeile, die mit drei aufeinanderfolgenden Zahlen beginnt, als Anfang der Punktdatensätze. In beiden Formaten können Punkte, Linien und Polygone gespeichert werden, jede Datei darf jedoch nur eine Singlepart-Linie oder ein Polygon-Feature enthalten. Polygon-Features müssen geschlossen sein, wobei die Koordinaten des letzten Stützpunktes mit denen des ersten identisch sind, und sie dürfen keinen Schnittpunkt mit sich selbst aufweisen.

  • In XYZ-Dateien werden x-, y- und z-Koordinaten als Gleitkommawerte gespeichert, wobei jede Zeile einen eigenen Punktdatensatz darstellt. Auf die XYZ-Koordinaten können alphanumerische Einträge folgen. Diese Informationen werden jedoch nicht in die resultierende Feature-Class übertragen.

  • In XYZI-Dateien werden x-, y-, z-und Intensitätsmesswerte gespeichert. Intensitätswerte werden in einem BLOB-Feld (Binary Large Object) für Multipatch-Ausgaben gespeichert.

    Hinweis:

    Wenn die ASCII-Datei XYZI-Format hat, aber die Intensitätsmesswerte nicht gewünscht werden, wählen Sie XYZ. So wird beim Lesen der Dateien der Intensitätswert übersprungen.

  • Das GENERATE-Format unterstützt keine Kopfzeilen, stellt jedoch eine ID für jeden Punkt zusammen mit XYZ-Koordinaten bereit. Die letzte Zeile der Datei kann optional mit dem Schlüsselwort END kommentiert werden:

    id x y z
    id x y z
    .
    .
    END
  • Das GENERATE-Format unterstützt mehrere Features pro Datei. Für Linien und Polygone kennzeichnet das Schlüsselwort END das Ende eines Features und jedes Feature muss ein Singlepart-Feature sein. Zwei Schlüsselwörter "END" in einer Zeile weisen auf das Ende der Datei hin.

    id
    x y z
    x y z
    x y z
    END
    id
    x y z
    x y z
    END
    END
    Hinweis:

    Polygone müssen im Uhrzeigersinn ausgerichtet sein, dürfen keinen Schnittpunkt mit sich selbst aufweisen und müssen geschlossen sein (wobei der letzte Stützpunkt mit dem ersten identisch ist). Wenn eine dieser Bedingungen nicht erfüllt wird, ist das Ausgabe-Polygon ungültig. Das Werkzeug Geometrie überprüfen kann zum Validieren der resultierenden Features verwendet werden. Das Werkzeug Geometrie reparieren kann zum Beheben der Fehler verwendet werden.

Syntax

arcpy.3d.ASCII3DToFeatureClass(input, in_file_type, out_feature_class, out_geometry_type, {z_factor}, {input_coordinate_system}, {average_point_spacing}, {file_suffix}, {decimal_separator})
ParameterErklärungDatentyp
input
[input,...]

Die ASCII-Dateien oder Ordner mit Daten im Format XYZ, XYZI (mit LIDAR-Intensität) oder 3D GENERATE. Alle Eingabedateien müssen dasselbe Format haben. Wenn ein Ordner angegeben wird, ist der Parameter Dateisuffix erforderlich, und es werden alle Dateien verarbeitet, die die gleiche Erweiterung aufweisen wie das angegebene Suffix.

Im Dialogfeldfenster des Werkzeugs kann ein Ordner auch als Eingabe festgelegt werden, indem der gewünschte Ordner in Windows Explorer ausgewählt und in das Eingabefeld des Parameters gezogen wird.

Folder; File
in_file_type

Das Format der ASCII-Dateien, die in eine Feature-Class konvertiert werden.

  • XYZTextdatei mit Geometrieinformationen, die als XYZ-Koordinaten gespeichert sind.
  • XYZITextdateien mit XYZ-Koordinaten zusammen mit Intensitätsmesswerten.
  • GENERATEIm Generate-Format strukturierte Textdateien.
String
out_feature_class

Die Feature-Class, die von diesem Werkzeug erstellt wird.

Feature Class
out_geometry_type

Der Geometrietyp der Ausgabe-Feature-Class.

  • MULTIPOINTDie Multipoint-Geometrie wird empfohlen, wenn die Eingabedaten viele Punkte enthalten und der Zugriff auf die Attribute der einzelnen Punktdatensätze nicht erforderlich ist.
  • POINTJede XYZ-Koordinate generiert ein Punkt-Feature.
  • POLYLINEDie Ausgabe enthält Polylinien-Features.
  • POLYGONDie Ausgabe enthält Polygon-Features.
String
z_factor
(optional)

Der Faktor, mit dem Z-Werte multipliziert werden. Dieser wird in der Regel verwendet, um lineare Z-Einheiten zu konvertieren, sodass sie den linearen XY-Einheiten entsprechen. Der Standardwert ist 1, wodurch die Höhenwerte unverändert bleiben. Der Parameter ist deaktiviert, wenn der Raumbezug der Eingabe-Oberfläche über ein Z-Datum mit einer angegebenen linearen Einheit verfügt.

Double
input_coordinate_system
(optional)

Das Koordinatensystem der Eingabedaten. Der Standardwert ist ein unbekanntes Koordinatensystem. Falls angegeben, kann die Ausgabe möglicherweise (nicht) in ein anderes Koordinatensystem projiziert werden. Dies hängt davon ab, ob die Geoverarbeitungsumgebung über ein Koordinatensystem für den Speicherort der Ziel-Feature-Class verfügt.

Coordinate System
average_point_spacing
(optional)

Die durchschnittliche planimetrische Entfernung zwischen den Eingabepunkten. Dieser Parameter wird nur verwendet, wenn für die Ausgabegeometrie MULTIPOINT festgelegt ist. Die Funktion des Parameters ist die Zusammengruppierung der Punkte. Dieser Wert wird zusammen mit den Punkten pro Shape-Grenzwert verwendet, um ein virtuelles Kachelungssystem zum Gruppieren der Punkte zu erstellen. Der Ursprung des Kachelsystems basiert auf der Domäne der Ziel-Feature-Class. Geben Sie den Abstand in den horizontalen Einheiten der Ziel-Feature-Class an.

Double
file_suffix
(optional)

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

String
decimal_separator
(optional)

Das in der Textdatei verwendete Dezimalzeichen, mit dem der ganzzahlige Teil einer Zahl von ihrem Bruchteil unterschieden wird.

  • DECIMAL_POINTEin Punkt wird als Dezimalzeichen verwendet. Dies ist die Standardeinstellung.
  • DECIMAL_COMMAEin Komma wird als Dezimalzeichen verwendet.
String

Codebeispiel

ASCII3DToFeatureClass – Beispiel 1 (Python-Fenster)

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

arcpy.env.workspace = "C:/data"
#Create spatial reference object using WKID
sr = arcpy.SpatialReference(32136)
arcpy.ASCII3DToFeatureClass_3d("masspntz.gen", "GENERATE", "elevation_points.shp", 
                               "MULTIPOINT", z_factor=3.28, 
                               input_coordinate_system=sr, average_point_spacing=2.5)
ASCII3DToFeatureClass – Beispiel 2 (eigenständiges Skript)

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

'''****************************************************************************
Name: ASCII3D_to_Feature_Class Example
Description: Creates a TIN surface using XYZI files in a folder and breaklines
             imported from ASCII files.
****************************************************************************'''
# Import system modules
import arcpy

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

# Define the spatial reference using the name
sr = arcpy.SpatialReference("Hawaii Albers Equal Area Conic")

# Create the elevation points
arcpy.ddd.ASCII3DToFeatureClass("Elevation Points", "XYZI",
                               "elevation_points.shp",
                               "MULTIPOINT", z_factor=3.28,
                               input_coordinate_system=sr,
                               average_point_spacing=2.5,
                               file_suffix="XYZ")

# Create the break lines
arcpy.ddd.ASCII3DToFeatureClass("brklines.gen", "GENERATE",
                               "breaklines.shp",
                               "POLYLINE", z_factor=3.28,
                               input_coordinate_system=sr)

arcpy.ddd.CreateTin("elevation_tin", sr,
                    [["breaklines.shp", "Shape", "hardline"],
                    ["elevation_points.shp", "Shape", "masspoints"]],
                    "CONSTRAINED_DELAUNAY")

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen