Feature-Class Z in ASCII (3D Analyst)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Exportiert 3D-Features in Form von GENERATE-, XYZ- oder Profildaten in ASCII-Textdateien.

Verwendung

Syntax

FeatureClassZToASCII_3d (in_feature_class, output_location, out_file, {format}, {delimiter}, {decimal_format}, {digits_after_decimal}, {decimal_separator})
ParameterErläuterungDatentyp
in_feature_class

Die 3D-Punkt-, Multipoint-, Polylinien- oder Polygon-Feature-Class, die in eine ASCII-Datei exportiert wird.

Feature Layer
output_location

Der Ordner, in den die Ausgabedateien geschrieben werden.

Folder
out_file

Der Name der resultierenden ASCII-Datei.

Wenn eine Line- oder Polygon-Feature-Class in das XYZ-Format exportiert wird, wird der Dateiname als Basisname verwendet. Für jedes Feature wird eine eindeutige Dateiausgabe erstellt, da das XYZ-Format nur eine Linie oder ein Polygon pro Datei unterstützt. Bei Multipart-Features wird ebenfalls jeder Teil in eine separate Datei geschrieben. An den Dateinamen wird die OID jedes Features und nach Bedarf weitere Zeichen angefügt, um eindeutige Dateinamen zu gewährleisten.

String
format
(optional)

Das Format der ASCII-Datei, die erstellt wird.

  • GENERATEErstellt die Ausgabe im GENERATE-Format. Dies ist die Standardeinstellung.
  • XYZSchreibt XYZ-Informationen von Eingabe-Features. Für jede Linie oder jedes Polygon im Eingabe-Feature wird eine Datei erstellt.
  • PROFILESchreibt Profilinformationen für Linien-Features, die in externen grafischen Anwendungen verwendet werden können.
String
delimiter
(optional)

Das in der Textdatei verwendete Feldtrennzeichen.

  • SPACEFeldwerte werden durch ein Leerzeichen getrennt. Dies ist die Standardeinstellung.
  • COMMAFeldwerte werden durch ein Komma getrennt. Diese Option kann nicht verwendet werden, wenn als Dezimaltrennzeichen ebenfalls ein Komma festgelegt ist.
String
decimal_format
(optional)

Die Methode, mit der die Anzahl der in den Ausgabedateien gespeicherten signifikanten Stellen bestimmt wird.

  • AUTOMATICDie Anzahl der signifikanten Stellen, die zur Beibehaltung der verfügbaren Genauigkeit nötig sind, während unnötige nachgestellte Nullen entfernt werden, wird automatisch bestimmt. Dies ist die Standardeinstellung.
  • FIXEDDie Anzahl der signifikanten Stellen wird im Parameter Stellen nach Dezimaltrennzeichen definiert.
String
digits_after_decimal
(optional)

Wird verwendet, wenn die Dezimalschreibweise auf "FIXED" festgelegt wird. So wird ermittelt, wie viele Stellen nach dem Dezimaltrennzeichen für die in die Ausgabedateien geschriebenen Gleitkommawerte übernommen werden.

Long
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

FeatureClassZToASCII – Beispiel 1 (Python-Fenster)

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

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.FeatureClassZToASCII_3d("LidarPts.shp", "", "ASCII_LidarPts.txt",
                            "GENERATE", "COMMA", "FIXED", 6, "DECIMAL_POINT")
FeatureClassZToASCII – Beispiel 2 (eigenständiges Skript)

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

'''****************************************************************************
Name: FeatureClassZToASCII Example
Description: This script demonstrates how to use the
             FeatureClassZToASCII tool to create generate files for all
             z-aware point features in a given workspace.
****************************************************************************'''
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    # Obtain a license for the ArcGIS 3D Analyst extension
    arcpy.CheckOutExtension('3D')
    # Set environment settings
    env.workspace = 'C:/data'
    # List all points in the target workspace
    fcList = arcpy.ListFeatureClasses("*", "POINT")
    if fcList:
        # Set Local Variables
        outFolder = "C:/output"
        outFormat = "GENERATE"
        delimeter = "SPACE"
        decimal = "FIXED"
        digits = 3
        dec_sep = "DECIMAL_POINT"
        for fc in fcList:    
            # Use Describe method to evaluate whether the feature class is z-aware
            desc = arcpy.Describe(fc)
            if desc.hasZ == True:
                # Define the output file name by replacing '.shp' with _ascii.txt
                outName = fc.replace('.shp', '') + "_ascii.txt"
                #Execute FeatureClassZToASCII_3d
                arcpy.FeatureClassZToASCII_3d(fc, outFolder, outName, outFormat, delimeter, decimal, digits, dec_sep)
    else:
        print "There are no feature classes in the " + env.workspace + " directory."


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)

Umgebung

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Erfordert 3D Analyst
ArcGIS for Desktop Standard: Erfordert 3D Analyst
ArcGIS for Desktop Advanced: Erfordert 3D Analyst
6/5/2014