Сводка
Экспортирует 3D объекты в текстовые файлы ASCII, хранящие данные в формате GENERATE, XYZ или данные профиля.
Использование
Опция Профиль записывает файл ASCII с двумя столбцами, который преобразует 3D-линейные объекты в записи, которые можно использовать для создания линейных графиков. Каждая линия в исходном классе пространственных объектов будет записана в отдельный файл, и имя файла будет содержать приставку с уникальным идентификатором (ID) линии. Каждая строка в файле ASCII будет содержать расстояние от начального положения линии до вершины (D), за которой следует высота этой вершины. При загрузке результирующего файла ASCII в графическое приложение первый столбец будет использоваться для определения оси x, а второй столбец-для определения оси y.
0 z1D1 z2D2 z3D3 z4
Опция XYZ записывает координаты x, y и z в виде значений с плавающей точкой, где каждая строка представляет отдельную запись точки.
x1 y1 z1x2 y2 z2x3 y3 z3x4 y4 z4
Примечание:
Объекты точек и мультиточек записываются в один файл, в то время как каждый полигональный и линейный объект записывается в отдельных текстовый файл, имя которого содержит приставку с уникальным ID объекта. Каждая часть составного объекта записывается в отдельный файл с номером этой части, следующим за идентификатором объекта в имени файла.
Формат GENERATE не поддерживает строки заголовков, он хранит все входные объекты в одном файле.
- Точечные объекты хранятся со своими ID и координатами XYZ, а последняя линия обозначена ключевым словом END:
id1 x1 y1 z1id2 x2 y2 z2id3 x3 y3 z3id4 x4 y4 z4END
Примечание:
Объекты мультиточек, созданные из одной записи исходного класса пространственных объектов, будут иметь одинаковый ID.
- Линейные и полигональные объекты отделяются ключевым словом END, а два следующих друг за другом ключевых слова END обозначают конец файла:
id1x1 y1 z1x2 y2 z2x3 y3 z3x4 y4 z4END id2x1 y1 z1x2 y2 z2END END
Примечание:
Первые и последние координаты XYZ для полигональных объектов всегда являются одинаковыми.
- Точечные объекты хранятся со своими ID и координатами XYZ, а последняя линия обозначена ключевым словом END:
Синтаксис
FeatureClassZToASCII(in_feature_class, output_location, out_file, {format}, {delimiter}, {decimal_format}, {digits_after_decimal}, {decimal_separator})
Parameter | Объяснение | Тип данных |
in_feature_class | Класс точечных, мультиточечных или полигональных объектов 3D, который будет экспортирован в файл ASCII. | Feature Layer |
output_location | Папка, в которую будут записаны выходные файлы. | Folder |
out_file | Имя итогового файла ASCII. Если класс линейных или полигональных объектов экспортируется в формат XYZ, имя файла используется как базовое имя. Каждый объект будет иметь уникальный выходной файл, поскольку формат XYZ поддерживает для каждого файла только одну линию или полигон. У составных объектов каждая часть будет записана в отдельный файл. Имя файла будет содержать приставку с OID каждого объекта, а также любые дополнительные символы, необходимые для придания уникальности каждому имени файла. | String |
format (Дополнительный) | Указывает формат создаваемого файла ASCII.
| String |
delimiter (Дополнительный) | Указывает разделитель записей в столбцах таблицы текстового файла.
| String |
decimal_format (Дополнительный) | Указывает метод, используемый для определения количества значащих цифр, хранящихся в выходных файлах.
| String |
digits_after_decimal (Дополнительный) | Количество цифр, написанных после запятой для значений с плавающей точкой, которые записываются в выходные файлы. Этот параметр используется, когда для параметра Десятичные обозначения задано значение Указанное число (decimal_format=FIXED в Python). | Long |
decimal_separator (Дополнительный) | Указывает десятичный символ, используемый для разделения целой часть числа от дробной.
| String |
Производные выходные данные
Name | Объяснение | Тип данных |
derived_output | Папка, в которую будут записаны выходные файлы. | Папка; Файл |
Пример кода
В следующем примере показано использование этого инструмента в окне Python.
arcpy.env.workspace = "C:/data"
arcpy.FeatureClassZToASCII_3d("LidarPts.shp", "", "ASCII_LidarPts.txt",
"GENERATE", "COMMA", "FIXED", 6, "DECIMAL_POINT")
В следующем примере показано использование этого инструмента в автономном скрипте 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
try:
# Set environment settings
arcpy.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 Exception as err:
print(err)
Environments
Информация о лицензиях
- Basic: Требуется 3D Analyst
- Standard: Требуется 3D Analyst
- Advanced: Требуется 3D Analyst