Feature-Class Z zu ASCII (3D Analyst)

Zusammenfassung

Exportiert 3D-Features im XYZ-, GENERATE- oder PROFILE-Format in eine ASCII-Textdatei.

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

Gibt den Namen der Ausgabedatei an.

Beim Exportieren einer Feature-Class mit Linien oder Polygonen in das XYZ-Format wird der Dateiname als Vorlage verwendet. Der Grund ist, dass die Einfachheit des XYZ-Formats nur eine Linie oder ein Polygon pro Datei unterstützt. Die Einschränkung reicht bis zur Teilebene. Wenn ein Feature mehrere Teile besitzt, wird daher jeder Teil in eine separate Datei geschrieben. Die Dateien werden mit dem im Dialogfeld angegebenen Präfix und Suffix sowie mit der OID jedes Features und nach Bedarf mit weiteren Zeichen versehen, um jeweils eindeutige Dateinamen zu gewährleisten.

File; Folder
format
(optional)

Das Format der ASCII-Datei, die erstellt wird.

  • GENERATE – Die Ausgabe wird im GENERATE-Format erstellt.
  • XYZ – Die Ausgabe wird im XYZ-Format erstellt. Für jede Linie oder jedes Polygon im Eingabe-Feature wird eine Datei erstellt.
  • PROFILE – Die Ausgabe wird im PROFILE-Format erstellt. Diese Option steht nur für Linien-Features zur Verfügung.
String
delimiter
(optional)

The field delimeter used in the text file.

  • SPACEA space will be used to delimit field values. This is the default.
  • COMMAA comma will be used to delimit field values. This option is not applicable if the decimal separator is also a comma.
String
decimal_format
(optional)

Gibt die Methode an, 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.
  • 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)

The decimal character used in the text file to differentiate the integer of a number from its fractional part.

  • DECIMAL_POINTA point is used as the decimal character. This is the default.
  • DECIMAL_COMMAA comma is used as the decimal character.
String

Codebeispiel

FeatureClassZToASCII – Beispiel 1 (Python-Fenster)

The following sample demonstrates the use of this tool in the Python window:

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)

The following sample demonstrates the use of this tool in a stand-alone Python script:

'''****************************************************************************
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)

Umgebungen

Verwandte Themen

Lizenzinformationen

ArcView: Erfordert 3D Analyst
ArcEditor: Erfordert 3D Analyst
ArcInfo: Erfordert 3D Analyst

7/10/2012