Создать поэтажный план из облака точек (Indoors)

Краткая информация

Создает класс полилинейных объектов, содержащий 2D полилинейные объекты, созданные из входных данных облака точек. Результаты работы этого инструмента могут быть уточнены и использованы в качестве входных данных при заполнении рабочей области Indoors данными, для облегчения создания карт и сцен с поддержкой этажей.

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

  • Этот инструмент принимает файл LAS в качестве входных данных и создает 2D полилинейные объекты, представляющие собой вертикально вытянутую архитектуру, например стены, двери и колонны. Используйте этот инструмент как часть более крупного рабочего процесса для создания поэтажного плана из облака точек.

  • Вы можете уточнить выходной класс полилинейных объектов, созданный этим инструментом, для использования в качестве входных данных для инструмента Импортировать объекты в набор данных Indoor.

  • Если для входного облака точек определена система координат, параметр Система координат устанавливается автоматически. Если для входного облака точек не определена система координат, используйте параметр Система координат, чтобы установить её. Если во входном облаке точек определена неверная система координат, ее можно изменить в свойствах слоя входного облака точек. Инструмент использует указанную систему координат при обработке координат облака точек и при создании выходных линейных объектов.

  • За один запуск инструмент обрабатывает один уровень одного здания. Если входные данные облака точек охватывают несколько зданий или уровней (этажей), используйте следующие параметры Границы обработки, чтобы ограничить область обработки:

    • Используйте параметр Диапазоны Z, чтобы ограничить обработку одним уровнем или подмножеством высот на уровне.
    • Используйте параметр Экстент, чтобы ограничить обработку одним зданием или подмножеством зданий. Параметр Экстент имеет приоритет над параметром среды Экстент.

  • Чтобы улучшить качество сгенерированных выходных данных, используйте параметр Диапазоны Z, чтобы ограничить обработку диапазоном z-значений, исключая большую часть мебели, осветительных приборов, освещения и других объектов, не ограничивающих комнату. Вы можете изучить данные облака точек на локальной сцене, чтобы определить оптимальный диапазон значений z для включения. На следующем рисунке показано, как диапазон обработки по оси Z в 1–2 метра позволяет избежать задевания мебели и потолочных светильников:

    Комната с мебелью и потолочными светильниками и значениями диапазона z
    Минимальное значение z равно 1, а максимальное значение z равно 2, чтобы избежать захвата мебели и потолочных светильников в комнате.

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

  • Используйте параметр Короткий допуск объектов, чтобы удалить короткие полилинейные объекты из данных. Элементы, длина которых меньше или равна указанному допуску, будут удалены, если они не находятся в пределах 0,05 метра от других элементов. Используйте нулевое значение, чтобы избежать удаления коротких объектов, что может быть полезно для визуализации положения стен в разреженных данных облака точек.

  • Этот инструмент может использовать поле классификации KeyPoint входного облака точек. Если это так, то инструмент восстановит исходные значения полей после запуска инструмента.

Параметры

ПодписьОписаниеТип данных
Входное облако точек

Входной файл LAS или набор данных, содержащий данные облака точек, из которых будут созданы полилинейные объекты.

LAS Dataset Layer
Выходные линейные объекты

Класс полилинейных объектов, который будет создан для хранения объектов, сгенерированных на основе данных LAS.

Если рабочая область не указана, будет использоваться временная рабочая область.

Feature Class
Система координат
(Дополнительный)

Система координат входных данных LAS и выходного класса полилинейных объектов. По умолчанию будет использоваться система координат, определенная в данных LAS как для горизонтальной, так и для вертикальной системы координат.

Spatial Reference
Выходное z-значение
(Дополнительный)

Z-значение, которое будет присвоено сгенерированным полилинейным объектам. По умолчанию - 0.

Вы можете указать значение в метрах или футах. Инструмент автоматически преобразует значение для использования единицы измерения вертикальной системы координат данных.

Linear Unit
Упростить линии
(Дополнительный)

Указывает, будут ли выходные полилинии упрощаться во время обработки с использованием алгоритма сжатия полилиний для нормализации сгенерированных полилиний перед удалением дополнительных вершин, которые не являются необходимыми для сохранения эффективных площадей.

  • Отмечено - линии будут упрощены. Это значение по умолчанию
  • Не отмечено – линии не будут упрощены.
Boolean
Короткий допуск объектов
(Дополнительный)

Допуск в метрах или международных футах, при котором будут удалены короткие объекты. По умолчанию 1 метр.

Используйте значение 0, чтобы обойти сохранение коротких объектов.

Linear Unit
Диапазоны Z
(Дополнительный)

Один или несколько z-диапазонов входного облака точек. Точки в указанных диапазонах z будут анализироваться при создании выходных полилинейных объектов.

Если значение не указано, будет использоваться полный диапазон значений z, присутствующих во входных данных облака точек.

Value Table
Экстент
(Дополнительный)

Экстент данных, который будет оцениваться.

  • Текущий экстент отображения Вид карты — Экстент будет основан на активной карте или сцене.
  • Нарисовать экстент Закончить прямым углом - экстент будет основан прямоугольнике, нарисованном на карте или сцене.
  • Экстент слоя Слой — Экстент будет основан на активном слое карты. Выберите доступный слой или воспользуйтесь опцией Экстент данных во всех слоях. У каждого слоя карте есть следующие опции:

    • Все объекты Выбрать все - экстент всех объектов.
    • Выбранные объекты Область из выбранных объектов - экстент выбранных объектов.
    • Отображаемые объекты Extent Indicator - экстент отображаемых объектов.

  • Обзор Обзор - экстент будет основан на наборе данных.
  • Пересечение входных данных Пересечение - экстент будет основан на пересекающемся экстенте всех входных данных.
  • Объединение входных данных Объединение - экстент будет комбинацией экстентов всех входных данных.
  • Буфер обмена Вставить - экстент может быть скопирован в буфер обмена и из него.
    • Копировать экстент Копировать - копирует экстент и систему координат в буфер обмена.
    • Вставить экстент Вставить - вставляет экстент и систему координат из буфера обмена. Если буфер обмена не содержат систему координат, экстент будет использовать систему координат карты.
  • Сбросить экстент Сбросить - экстент будет сброшен до значения по умолчанию.

Если координаты заданы вручную, они должны быть числовыми значениями в системе координат активной карты. На карте могут использоваться единицы отображения, отличные от введенных координат. Используйте знак отрицательного значения для координат юга и запада.

Extent

arcpy.indoors.GenerateFloorPlanFromPointCloud(in_point_cloud, out_line_features, {coordinate_system}, {output_z_value}, {simplify}, {short_feature_tolerance}, {z_ranges}, {extent})
ИмяОписаниеТип данных
in_point_cloud

Входной файл LAS или набор данных, содержащий данные облака точек, из которых будут созданы полилинейные объекты.

LAS Dataset Layer
out_line_features

Класс полилинейных объектов, который будет создан для хранения объектов, сгенерированных на основе данных LAS.

Если рабочая область не указана, будет использоваться временная рабочая область.

Feature Class
coordinate_system
(Дополнительный)

Система координат входных данных LAS и выходного класса полилинейных объектов. По умолчанию будет использоваться система координат, определенная в данных LAS как для горизонтальной, так и для вертикальной системы координат.

Spatial Reference
output_z_value
(Дополнительный)

Z-значение, которое будет присвоено сгенерированным полилинейным объектам. По умолчанию - 0.

Вы можете указать значение в метрах или футах. Инструмент автоматически преобразует значение для использования единицы измерения вертикальной системы координат данных.

Linear Unit
simplify
(Дополнительный)

Указывает, будут ли выходные полилинии упрощаться во время обработки с использованием алгоритма сжатия полилиний для нормализации сгенерированных полилиний перед удалением дополнительных вершин, которые не являются необходимыми для сохранения эффективных площадей.

  • SIMPLIFYЛинии будут упрощены. Это значение по умолчанию
  • NO_SIMPLIFYЛинии не будут упрощены.
Boolean
short_feature_tolerance
(Дополнительный)

Допуск в метрах или международных футах, при котором будут удалены короткие объекты. По умолчанию 1 метр.

Используйте значение 0, чтобы обойти сохранение коротких объектов.

Linear Unit
z_ranges
[z_ranges,...]
(Дополнительный)

Один или несколько z-диапазонов входного облака точек. Точки в указанных диапазонах z будут анализироваться при создании выходных полилинейных объектов.

Если значение не указано, будет использоваться полный диапазон значений z, присутствующих во входных данных облака точек.

Value Table
extent
(Дополнительный)

Экстент данных, который будет оцениваться.

  • MAXOF – Будет использоваться максимальный экстент всех входных данных.
  • MINOF – Будет использоваться минимальная область, которая является общей для всех входных данных.
  • DISPLAY — Экстент равен видимому отображению.
  • Имя слоя - будет использоваться тот же экстент, что и в указанном слое.
  • Объект Extent — будет использоваться экстент указанного объекта.
  • Строка координат, разделенных пробелами – будет использоваться экстент из заданной строки. Координаты должны быть выражены в таком порядке: x-min, y-min, x-max, y-max.
Extent

Пример кода

GenerateFloorPlanFromPointCloud, пример 1 (окно Python)

Пример скрипта окна Python для использования функции GenerateFloorPlanFromPointCloud в режиме прямого запуска.

import arcpy
arcpy.indoors.GenerateFloorPlanFromPointCloud(r"C:\Indoors\PointcloudData\Floor1scan.LAS",
                                              r"C:\Indoors\ExampleData.gdb\OutputPolylines",
                                              "", "", "", "", "", "",
                                              )
GenerateFloorPlanFromPointCloud, пример 2 (окно Python)

В следующем автономном скрипте показано использование функции GenerateFloorPlanFromPointCloud.

#Name: Indoors_GenerateFloorPlanFromPointCloud_example2.py
#Description: Generates polyline floor plan features from LAS point cloud data

import arcpy

# Check Out Extensions
arcpy.CheckOutExtension('Indoors')
arcpy.CheckOutExtension('3D')
arcpy.CheckOutExtension('Spatial')  # or 'ImageAnalyst'

# Set Local Variables
in_point_cloud = r"C:\data\Building L - All_Floors.las"
out_line_features = r"C:\data\FloorPlans.gdb\Building_L_East_Floor_1"
coordinate_system = 'PROJCS["NAD_1983_2011_StatePlane_California_VI_FIPS_0406",GEOGCS["GCS_NAD_1983_2011",DATUM["D_NAD_1983_2011",SPHEROID["GRS_1980",6378137.0,298.257222101]],
                            PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],
                            PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",500000.0],PARAMETER["Central_Meridian",-116.25],
                            PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],
                            UNIT["Meter",1.0],AUTHORITY["EPSG",6425]]'
output_z_value = "4.25 Meters"
simplify = "SIMPLIFY"
short_feature_tolerance = "25.4 Millimeters"
z_ranges = "1 1.8;2.2 3.2"
extent="DEFAULT"


# Call the function
arcpy.gp.GenerateFloorPlanFromPointCloud(
    in_point_cloud,
    out_line_features,
    coordinate_system,
    output_z_value,
    simplify,
    short_feature_tolerance,
    z_ranges,
    extent
)

# Check In Extensions
arcpy.CheckInExtension('Indoors')
arcpy.CheckInExtension('3D')
arcpy.CheckInExtension('Spatial')

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

  • Basic: Нет
  • Standard: Нет
  • Advanced: Обязательно 3D Analyst и ArcGIS Indoors Pro или ArcGIS Indoors Maps. Также требует Spatial Analyst или Image Analyst

Связанные разделы