Classe d’entités Z vers fichier ASCII (3D Analyst)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Exporte des entités 3D vers des fichiers texte ASCII en stockant des données GENERATE, XYZ ou de profil.

Utilisation

Syntaxe

FeatureClassZToASCII_3d (in_feature_class, output_location, out_file, {format}, {delimiter}, {decimal_format}, {digits_after_decimal}, {decimal_separator})
ParamètreExplicationType de données
in_feature_class

Classe d'entités 3D ponctuelles, multi-points, polylignes ou surfaciques exportée vers un fichier ASCII.

Feature Layer
output_location

Dossier dans lequel les fichiers en sortie sont écrits.

Folder
out_file

Nom du fichier ASCII résultant.

Si une classe d'entités linéaires ou surfaciques est exportée au format XYZ, le nom du fichier est habituellement un nom de base. Chaque entité correspond à un fichier en sortie unique puisque le format XYZ ne prend en charge qu'une ligne ou un polygone par fichier. Chaque partie d'une entité multi-parties est également écrite dans un fichier distinct. Le nom de fichier ajouté comprend l'OID de chaque entité, ainsi que les caractères supplémentaires nécessaires pour le rendre unique.

String
format
(Facultatif)

Format du fichier ASCII créé.

  • GENERATEEcrit une sortie au format GENERATE. Il s'agit de l'option par défaut.
  • XYZEcrit les informations XYZ des entités en entrée. Un fichier est créé pour chaque ligne ou polygone de l'entité en entrée.
  • PROFILEEcrit des informations de profil pour des entités linéaires pouvant être utilisées dans des applications externes de représentation de diagrammes.
String
delimiter
(Facultatif)

Délimiteur de champ utilisé dans le fichier texte.

  • ESPACEUn espace sera utilisé pour délimiter les valeurs de champ. Il s'agit de l'option par défaut.
  • VIRGULEUne virgule sera utilisée pour délimiter les valeurs de champ. Cette option n'est pas applicable si le séparateur décimal est également une virgule.
String
decimal_format
(Facultatif)

Méthode utilisée pour déterminer le nombre de chiffres significatifs qui sont stockés dans les fichiers en sortie.

  • AUTOMATICLe nombre de chiffres significatifs requis pour conserver la précision disponible, tout en supprimant les zéros de fin inutiles, est déterminé automatiquement. Il s'agit de l'option par défaut.
  • FIXEDLe nombre de chiffres significatifs est défini dans le paramètre Nombre de décimales.
String
digits_after_decimal
(Facultatif)

Utilisé lorsque la valeur Notation décimale est définie sur FIXED. Cela détermine le nombre de chiffres après la virgule des valeurs à virgule flottante écrites dans les fichiers en sortie.

Long
decimal_separator
(Facultatif)

Le caractère décimal utilisé dans le fichier texte pour différencier la partie entière d'un nombre de sa partie fractionnaire.

  • DECIMAL_POINTUn point sert de caractère décimal. Il s'agit de l'option par défaut.
  • DECIMAL_COMMAUne virgule sert de caractère décimal.
String

Exemple de code

1er exemple d'utilisation de l'outil FeatureClassZToASCII (fenêtre Python)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :

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")
2e exemple d'utilisation de l'outil FeatureClassZToASCII (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :

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

Environnements

Thèmes connexes

Informations de licence

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