Класс объектов Z в файл ASCII (Feature Class Z To ASCII) (3D Analyst)

Уровень лицензии:BasicStandardAdvanced

Резюме

Экспортирует 3D объекты в текстовые файлы ASCII, хранящие данные в формате GENERATE, XYZ или данные профиля.

Использование

Синтаксис

FeatureClassZToASCII_3d (in_feature_class, output_location, out_file, {format}, {delimiter}, {decimal_format}, {digits_after_decimal}, {decimal_separator})
ПараметрОбъяснениеТип данных
in_feature_class

Класс точечных, мультиточечных или полигональных объектов 3D, который будет экспортирован в файл ASCII.

Feature Layer
output_location

Папка, в которую будут записаны выходные файлы.

Folder
out_file

Имя итогового файла ASCII.

Если класс линейных или полигональных объектов экспортируется в формат XYZ, имя файла используется как базовое имя. Каждый объект будет иметь уникальный выходной файл, поскольку формат XYZ поддерживает для каждого файла только одну линию или полигон. У составных объектов каждая часть будет записана в отдельный файл. Имя файла будет содержать приставку с OID каждого объекта, а также любые дополнительные символы, необходимые для придания уникальности каждому имени файла.

String
format
(дополнительно)

Формат создаваемого файла ASCII.

  • GENERATEЗаписывает выходные данные в формате GENERATE. Это значение используется по умолчанию.
  • XYZЗаписывает информацию о координатах XYZ входных объектов. Будет создано по одному файлу для каждой линии или полигона из входного объекта.
  • PROFILEЗаписывает информацию о профиле для линейных объектов, которую можно использовать во внешних графических приложениях.
String
delimiter
(дополнительно)

Разделитель поля, используемый в текстовом файле.

  • SPACEПробел используется для разделения значений полей. Это значение используется по умолчанию.
  • COMMAДля разделения значений полей будет использоваться запятая. Эта опция недоступна, если разделителем десятичных знаков также является запятая.
String
decimal_format
(дополнительно)

Метод, используемый для определения количества значащих цифр, хранящихся в выходных файлах.

  • AUTOMATICКоличество значащих цифр, необходимое для сохранения доступной точности при удалении лишних конечных нулей, определяется автоматически. Это значение используется по умолчанию.
  • FIXEDКоличество значащих цифр задается с помощью параметра Цифр после запятой (Digits after Decimal).
String
digits_after_decimal
(дополнительно)

Используется, когда в качестве параметра Десятичные обозначения (Decimal Notation) задано значение FIXED. Определяет, как много знаков после запятой записывается для значений с плавающей точкой, в выходные файлы.

Long
decimal_separator
(дополнительно)

Десятичный символ, используемый в текстовом файле, чтобы отделить целую часть числа от дробной.

  • DECIMAL_POINTТочка используется как десятичный символ. Это значение используется по умолчанию.
  • DECIMAL_COMMAЗапятая используется как десятичный символ.
String

Пример кода

Инструмент Класс объектов Z в файл ASCII (FeatureClassZToASCII): пример 1 (окно Python)

В следующем примере показано использование этого инструмента в окне 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")
Инструмент Класс объектов Z в файл ASCII (FeatureClassZToASCII): пример 2 (автономный скрипт)

В следующем примере показано использование этого инструмента в автономном скрипте Python:

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

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Требует 3D Analyst
ArcGIS for Desktop Standard: Требует 3D Analyst
ArcGIS for Desktop Advanced: Требует 3D Analyst
9/10/2013