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
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})
Parameter | Erklärung | Datentyp |
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.
| String |
out_feature_class | Die Feature-Class, die von diesem Werkzeug erstellt wird. | Feature Class |
out_geometry_type | Der Geometrietyp der Ausgabe-Feature-Class.
| 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.
| String |
Codebeispiel
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)
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")
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja