Краткая информация
Создает файлы листов LAS, соответствующие регулярной схеме разбиения на листы.
Использование
Примите во внимание использование этого инструмента для разбиения больших файлов LAS на файлы с размерами, оптимизированными для анализа данных, распространения и архивирования. Со схемой разбиения на листы по умолчанию получаются квадратные листы с шириной и высотой, определёнными ограничением целевого размера до 250 Мб. Точки из нескольких файлов LAS, попадающие в область одного листа, будут объединены в выходном файле.
Переупорядочивание точек LAS приведет к пространственной кластеризации лидарных данных и улучшит производительность при выполнении операций отображения и анализа. Этот процесс потребует создания временного файла.. Для увеличения скорости данной операции в качестве Временной рабочей области в параметрах среды рекомендуется задать папку на твердотельном накопителе.
Рекомендуется указывать сжатие ZLAS, если лидарные данные уже классифицированы и готовы к архивированию или распространению. Файлы ZLAS не доступны для редактирования, и их невозможно классифицировать.
Листы LAS можно задать одним из следующих способов:
- Указать размер не сжатого целевого файла LAS. Этот размер вычисляется для листа LAS с равномерным распределением точек по всему экстенту.
- Указать ширину и высоту листа.
- Задать входной пространственный объект для определения схемы разбиения на листы. Каждый полигон должен быть прямоугольником с единой шириной и высотой. Листы LAS могут быть созданы только для части набора данных LAS, охваченной входными пространственными объектами.
Выходные листы LAS могут быть перепроецированы путем указания Выходной системы координат в настройках среды или при помощи входных объектов с системой координат, отличной от исходных файлов LAS.
Пользовательские имена файлов LAS можно назначить, используя входные объекты и выбрав текстовое поле в параметре Метод присвоения имени.
Синтаксис
TileLas_3d (in_las_dataset, target_folder, {base_name}, {out_las_dataset}, {compute_stats}, {las_version}, {point_format}, {compression}, {las_options}, {tile_feature}, {naming_method}, {file_size}, {tile_width}, {tile_height}, {tile_origin})
Параметр | Объяснение | Тип данных |
in_las_dataset | Обрабатываемый набор данных LAS. | LAS Dataset Layer |
target_folder | Папка, куда будут записаны файлы листов LAS. | Folder |
base_name (Дополнительный) | Слово, с которого будет начинаться имя каждого выходного файла.. | String |
out_las_dataset (Дополнительный) | Новый набор данных LAS, который ссылается на файлы листов LAS, созданные этим инструментом. Этот пункт является необязательным. | LAS Dataset |
compute_stats (Дополнительный) | Определяет, следует ли вычислять статистику для файлов LAS, на которые ссылается набор данных LAS. Наличие статистики позволяет использовать опции фильтрации и символов для слоя набора данных LAS, чтобы показывать только атрибутивные значения LAS, существующие в файлах LAS.
| Boolean |
las_version (Дополнительный) | Версия файла LAS для каждого выходного файла. Значение по умолчанию равно 1.4.
| String |
point_format (Дополнительный) | Формат записи точек в выходных файлах LAS. Доступные опции зависят от версии файла LAS, указанной в параметре point_format. | Long |
compression (Дополнительный) | Задается, если выходной файл LAS будет в сжатом формате или в обычном формате LAS.
| String |
las_options [las_options,...] (Дополнительный) | Список дополнительных изменений в выходных файлах LAS.
| String |
tile_feature (Дополнительный) | Полигональные объекты, задающие ширину и высоту листа, которые будут использованы для разбиения на листы лидарных данных. Подразумевается, что полигоны будут прямоугольниками, а экстент первого объекта будет использован для определения ширины и высоты листа. | Feature Layer |
naming_method (Дополнительный) | Определяет способ создания имени выходного листа. Если в параметре tile_feature указаны входные объекты, для определения имени выходного файла можно использовать их поля (текстовые или числовые). Это имя будет присоединено к тексту, указанному в параметре base_name. Поддерживаются следующие способы автоматически созданных именований:
| String |
file_size (Дополнительный) | Это значение, выраженное в мегабайтах, представляет верхнее предельное значение размера несжатого файла выходного листа LAS с единым распределением точек по всему экстенту. ПО умолчанию установлено как 250, это значение используется для вычисляемой ширины и высоты. Этот параметр игнорируется, если в параметрах tile_feature или tile_width и tile_height заданы значения. | Double |
tile_width (Дополнительный) | Ширина каждого листа. Если для ширины и высоты заданы значения, параметр file_size будет игнорироваться. Если в параметре tile_feature указаны входные объекты, ширина листа будет получена из ширины первого объекта, и этот параметр будет игнорироваться. | Linear Unit |
tile_height (Дополнительный) | Высота каждого листа. Если для ширины и высоты заданы значения, параметр file_size будет игнорироваться. Если в параметре tile_feature указаны входные объекты, высота листа будет получена из высоты первого объекта, и этот параметр будет игнорироваться. | Linear Unit |
tile_origin (Дополнительный) | Координаты начальной точки сетки листов. Значение по умолчанию получается из левого нижнего угла входного набора данных LAS. Если в параметре tile_feature указаны входные объекты, начало отсчета будет унаследовано от левого нижнего угла первого объекта, и этот параметр будет игнорироваться. | Point |
Пример кода
TileLas, пример 1 (окно Python)
В следующем примере показано использование этого инструмента в окне Python.
arcpy.env.workspace = 'C:/data'
arcpy.ddd.TileLas('Denver_2', basename='2014_', out_las_dataset='Denver_2014.lasd',
las_version='1.4', point_format=6, compression='ZLAS Compression',
las_options=['Rearrange points'], naming_method='ROW_COLUMN', file_size=300)
TileLas, пример 2 (автономный скрипт)
В следующем примере показано использование этого инструмента в автономном скрипте Python.
'''****************************************************************************
Name: Tile LAS File
Description: Creates tiled LAS files form an untiled collection.
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math
in_las = arcpy.GetParameterAsText(1) # The LAS files that need to be tiled
out_folder = arcpy.GetParameterAsText(2) # folder for LAS files
basename = arcpy.GetParameterAsText(3) # basename for output files
out_lasd = arcpy.GetParameterAsText(4) # output LAS dataset
try:
# Create temp LAS dataset to reference LAS files that will be tiled
temp_lasd = arcpy.CreateUniqueName('temp.lasd', tempfile.gettempdir())
arcpy.management.CreateLasDataset(in_las, temp_lasd)
arcpy.ddd.TileLas(temp_lasd, out_folder, basename, out_lasd, las_version=1.4,
point_format=7, file_size=300)
arcpy.management.Delete(temp_lasd)
arcpy.ddd.ClassifyLasGround(out_lasd, method='AGGRESSIVE')
arcpy.ddd.ClassifyLasBuilding(out_lasd, min_height='3 Meters', min_area='4 Meters')
arcpy.ddd.ClassifyLasByHeight(out_lasd, height_classification=[(3, 6), (4,20), (5,70)],
noise='All Noise', compute_stats='COMPUTE_STATS')
except arcpy.ExecuteError:
print(arcpy.GetMessages())
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует 3D Analyst
- ArcGIS Desktop Standard: Требует 3D Analyst
- ArcGIS Desktop Advanced: Требует 3D Analyst