Подпись | Описание | Тип данных |
Входные точечные объекты наблюдателей | 3D точки, представляющие наблюдателей. По каждому объекту будут создаваться собственные выходные данные. | Feature Layer |
Выходной класс пространственных объектов | 3D объекты, которые могут быть линиями, представляющими линию горизонта, или объектами-мультипатч, которые представляют силуэты. | Feature Class |
Входная поверхность (Дополнительный) | Топографическая поверхность, используемая для задания горизонта. Если поверхность не задана, будет использована виртуальная поверхность, определенная с помощью параметров Радиус виртуальной поверхности и Высота виртуальной поверхности. | LAS Dataset Layer; Mosaic Layer; Raster Layer; TIN Layer; Terrain Layer |
Радиус виртуальной поверхности (Дополнительный) | Радиус виртуальной поверхности, используемой для задания горизонта, если не указана входная поверхность. По умолчанию используется значение 1,000 метров. | Linear Unit |
Высота виртуальной поверхности (Дополнительный) | Высота виртуальной поверхности, используемая для определения горизонта вместо действительной поверхности. Если действительная поверхность указана, этот параметр игнорируется. По умолчанию - 0. | Linear Unit |
Входные объекты (Дополнительный) | Объекты, используемые при определении линии горизонта. Если объекты не заданы, линия горизонта будет состоять только из горизонта, заданного топографической или виртуальной поверхностью. | Feature Layer |
Уровень детальности объекта (Дополнительный) | Указывает уровень прорисовки, на котором следует изучить каждый пространственный объект.
| String |
Азимут от (Дополнительный) | Азимут в градусах, от которого будет начинаться анализ линии горизонта. Анализ начинается с точки наблюдения и идет направо, от значения параметра Азимут от к значению параметра Азимут до. Значение должно быть больше -360 и меньше 360. По умолчанию - 0. | Double; Field |
Азимут до (Дополнительный) | Направление в градусах, в котором будет завершен анализ линии горизонта. Анализ начинается с точки наблюдения и идет направо, от значения параметра Азимут от к значению параметра Азимут до. Это значение не должно быть более, чем на 360 градусов больше, чем значение параметра Азимут от. Значение по умолчанию равно 360. | Double; Field |
Приращение азимута (Дополнительный) | Угловой интервал в градусах, при котором будет вычисляться горизонт при проведении анализа линии горизонта между значениями параметров Азимут от и Азимут до. Значение должно быть не больше разницы, которая получается, если из значения параметра Азимут от вычесть Азимут до. Значение по умолчанию равно 1. | Double; Field |
Максимальный радиус горизонта (Дополнительный) | Максимальное расстояние от местоположения наблюдателя, на котором будет искаться горизонт. Значение 0 указывает на то, что ограничения не будут применяться. По умолчанию - 0. | Linear Unit |
Горизонт сегмента (Дополнительный) | Указывает, будет ли полученная линия горизонта иметь по одному объекту на каждого наблюдателя, или линия горизонта каждого наблюдателя будет сегментирована на уникальные отрезки, вместе составляющие линию горизонта. Этот параметр доступен только в том случае, если для параметра Входные объекты указаны один или несколько объектов-мультипатчей. Если создаются силуэты, этот параметр покажет, должны ли использоваться дивергентные лучи. Для солнечных теней снимите отметку с этого параметра.
| Boolean |
Масштаб к процентам (Дополнительный) | Процент исходного вертикального угла (угла над горизонтом, или угла высоты) или высоты каждой вершины линии горизонта должен быть размещен. Если используется значение 0 или 100, масштабирование не произойдет. По умолчанию используется 100. | Double |
Масштаб на основании (Дополнительный) | Указывает, как будет выполняться масштабирование.
| String |
Метод масштаба (Дополнительный) | Указывает вершину, которая будет использоваться для вычисления масштаба.
| String |
Использовать кривизну (Дополнительный) | Указывает, будет ли кривизна земли использоваться при создании контура. Этот параметр доступен только в том случае, если для параметра Входная поверхность указана растровая поверхность.
| Boolean |
Использовать рефракцию (Дополнительный) | Указывает, должна ли во время создания контура из входной поверхности применяться атмосферная рефракция. Эта опция доступна только в том случае, если для параметра Входная поверхность указана растровая поверхность.
| Boolean |
Коэффициент рефракции (Дополнительный) | Если атмосферная рефракция учитывается, будет применен коэффициент рефракции. Значение по умолчанию равно 0.13. | Double |
Разрешение уровня пирамидных слоев (Дополнительный) | Z-допуск или разрешение размера окна для уровня пирамидных слоев Terrain, которое будет использоваться. Значением по умолчанию является 0, полное разрешение. | Double |
Создать силуэты (Дополнительный) | Указывает, будут ли выходные объекты представлять линии горизонта, определяющие барьер между входными данными и открытым небом, или силуэты, представляющие фасад наблюдаемых входных объектов. Эта опция доступна только в том случае, если для параметра Входные объекты указаны один или несколько объектов-мультипатчей.
| Boolean |
Краткая информация
Создает класс объектов линий или мультипатчей, содержащий результаты анализа очертаний линии горизонта.
Более подробно о том, как работает инструмент Линия горизонта
Иллюстрация
Использование
Этот инструмент требует, чтобы все входные данные находились в системе координат проекции. Входной класс пространственных объектов, не находящийся в системе координат проекции, можно перепроецировать с помощью инструмента Проецировать, а входную растровую поверхность можно перепроецировать с помощью инструмента Проецировать растр.
Параметр Разделенная на сегменты линия горизонта можно использовать для того, чтобы определить, какая часть линии горизонта определяется определенными объектами-мультипатчами или окружающей поверхностью высот. Это может помочь понять, влияют ли определенные объекты интереса на линию горизонта, построенную из данной точки наблюдения.
Инструмент Линия горизонта используется для создания объектов-силуэтов, которые могут быть вытянуты в объемы теней при помощи инструмента Граница видимости. Тени, созданные в ходе этого процесса, будут созданы с небольшим смещением от геометрии входных объектов. В качестве альтернативы можно использовать инструмент Объемный теневой объект, создающий тени, отходящие от геометрии объекта, чтобы создавать точный теневой объект. Размещение теней на поверхности также может быть выполнено с помощью инструмента Частота затенения.
Следующие поля будут добавлены к значению параметра Выходной класс пространственных объектов, содержащему линии горизонта:
- OBSV_PT_ID– FID точки наблюдения, используемой для создания этой линии горизонта.
- ORIGFTR_ID – FID пространственного объекта, например, здания.
Следующие поля будут добавлены к значению параметра Выходной класс пространственных объектов, содержащему очертания:
- OBSV_PT_ID – FID точки наблюдения, используемой для создания этого силуэта.
- ORIGFTR_ID – FID исходного пространственного объекта, например здания, представляемого этим силуэтом.
- DIR_VECT_X – компонент X единичного вектора, представляющего направление световых лучей от наблюдателя.
- DIR_VECT_Y – компонент y единичного вектора, представляющего направление световых лучей от наблюдателя.
- DIR_VECT_Z – компонент z единичного вектора, представляющего направление световых лучей от наблюдателя.
- FEAT_CTR_X – компонент x центра внешней границы исходного пространственного объекта (например, здания).
- FEAT_CTR_Y – компонент y центра внешней границы пространственного объекта.
- FEAT_CTR_Z – компонент z центра внешней границы пространственного объекта.
- BHND_CTR_X – компонент x центра внешней границы пространственного объекта, перемещенной за этот объект.
- BHND_CTR_Y – компонент y центра внешней границы пространственного объекта, перемещенной за этот объект.
- BHND_CTR_Z – компонент z центра внешней границы пространственного объекта, перемещенной за этот объект.
- USED_PARLL – было ли создано очертание при помощи параллельных световых лучей (1 для ответа «да» и 0 для ответа «нет»).
- MADE_VERT – было ли очертание сделано вертикальным, а не перпендикулярным световым лучам (1 для ответа «да» и 0 для ответа «нет»).
- MOVED_BHND – было ли очертание перемещено за пространственный объект, а не оставлено в его центре (1 для ответа «да» и 0 для ответа «нет»).
Атмосферная рефракция и коррекция кривизны земли будут применяться только в том случае, если значение параметра Входная поверхность является набором растровых данных. Если поверхность определяется набором данных TIN, Terrain или LAS, используйте один из следующих инструментов для экспорта данных в растр:
Параметры
arcpy.ddd.Skyline(in_observer_point_features, out_feature_class, {in_surface}, {virtual_surface_radius}, {virtual_surface_elevation}, {in_features}, {feature_lod}, {from_azimuth_value_or_field}, {to_azimuth_value_or_field}, {azimuth_increment_value_or_field}, {max_horizon_radius}, {segment_skyline}, {scale_to_percent}, {scale_according_to}, {scale_method}, {use_curvature}, {use_refraction}, {refraction_factor}, {pyramid_level_resolution}, {create_silhouettes})
Имя | Описание | Тип данных |
in_observer_point_features | 3D точки, представляющие наблюдателей. По каждому объекту будут создаваться собственные выходные данные. | Feature Layer |
out_feature_class | 3D объекты, которые могут быть линиями, представляющими линию горизонта, или объектами-мультипатч, которые представляют силуэты. | Feature Class |
in_surface (Дополнительный) | Топографическая поверхность, используемая для задания горизонта. Если поверхность не задана, будет использована виртуальная поверхность, определенная с помощью параметров virtual_surface_radius и virtual_surface_elevation. | LAS Dataset Layer; Mosaic Layer; Raster Layer; TIN Layer; Terrain Layer |
virtual_surface_radius (Дополнительный) | Радиус виртуальной поверхности, используемой для задания горизонта, если не указана входная поверхность. По умолчанию используется значение 1,000 метров. | Linear Unit |
virtual_surface_elevation (Дополнительный) | Высота виртуальной поверхности, используемая для определения горизонта вместо действительной поверхности. Если действительная поверхность указана, этот параметр игнорируется. По умолчанию - 0. | Linear Unit |
in_features [in_features,...] (Дополнительный) | Объекты, используемые при определении линии горизонта. Если объекты не заданы, линия горизонта будет состоять только из горизонта, заданного топографической или виртуальной поверхностью. | Feature Layer |
feature_lod (Дополнительный) | Указывает уровень прорисовки, на котором следует изучить каждый пространственный объект.
| String |
from_azimuth_value_or_field (Дополнительный) | Азимут в градусах, от которого будет начинаться анализ линии горизонта. Анализ начинается с точки наблюдения и идет направо, от значения параметра from_azimuth_value_or_field к значению параметра to_azimuth_value_or_field. Значение должно быть больше -360 и меньше 360. По умолчанию - 0. | Double; Field |
to_azimuth_value_or_field (Дополнительный) | Направление в градусах, в котором будет завершен анализ линии горизонта. Анализ начинается с точки наблюдения и идет направо, от значения параметра from_azimuth_value_or_field к значению параметра to_azimuth_value_or_field. Это значение не должно быть более, чем на 360 градусов больше, чем значение параметра from_azimuth_value_or_field. Значение по умолчанию равно 360. | Double; Field |
azimuth_increment_value_or_field (Дополнительный) | Угловой интервал в градусах, при котором будет вычисляться горизонт при проведении анализа линии горизонта между значениями параметров from_azimuth_value_or_field и to_azimuth_value_or_field. Значение должно быть не больше разницы, которая получается, если из значения параметра to_azimuth_value_or_field вычесть from_azimuth_value_or_field. Значение по умолчанию равно 1. | Double; Field |
max_horizon_radius (Дополнительный) | Максимальное расстояние от местоположения наблюдателя, на котором будет искаться горизонт. Значение 0 указывает на то, что ограничения не будут применяться. По умолчанию - 0. | Linear Unit |
segment_skyline (Дополнительный) | Указывает, будет ли полученная линия горизонта иметь по одному объекту на каждого наблюдателя, или линия горизонта каждого наблюдателя будет сегментирована на уникальные отрезки, вместе составляющие линию горизонта. Этот параметр доступен только в том случае, если для параметра in_features указаны объекты-мультипатчей. Если создаются силуэты, этот параметр покажет, должны ли использоваться дивергентные лучи. Для солнечных теней используйте опцию NO_SEGMENT_SKYLINE.
| Boolean |
scale_to_percent (Дополнительный) | Процент исходного вертикального угла (угла над горизонтом, или угла высоты) или высоты каждой вершины линии горизонта должен быть размещен. Если используется значение 0 или 100, масштабирование не произойдет. По умолчанию используется 100. | Double |
scale_according_to (Дополнительный) | Указывает, как будет выполняться масштабирование.
| String |
scale_method (Дополнительный) | Указывает вершину, которая будет использоваться для вычисления масштаба.
| String |
use_curvature (Дополнительный) | Указывает, будет ли кривизна земли использоваться при создании контура из функциональной поверхности. Этот параметр доступен только в том случае, если для параметра in_surface указана растровая поверхность.
| Boolean |
use_refraction (Дополнительный) | Указывает, должна ли во время создания контура из функциональной поверхности применяться атмосферная рефракция. Эта опция доступна только в том случае, если для параметра in_surface указана растровая поверхность.
| Boolean |
refraction_factor (Дополнительный) | Если атмосферная рефракция учитывается, будет применен коэффициент рефракции. Значение по умолчанию равно 0.13. | Double |
pyramid_level_resolution (Дополнительный) | Z-допуск или разрешение размера окна для уровня пирамидных слоев Terrain, которое будет использоваться. Значением по умолчанию является 0, полное разрешение. | Double |
create_silhouettes (Дополнительный) | Указывает, будут ли выходные объекты представлять линии горизонта, определяющие барьер между входными данными и открытым небом, или силуэты, представляющие фасад наблюдаемых входных объектов. Эта опция доступна только в том случае, если для параметра in_features указаны один или несколько объектов-мультипатчей.
| Boolean |
Пример кода
В следующем примере показано использование этого инструмента в окне Python.
arcpy.env.workspace = "C:/data"
arcpy.ddd.Skyline("observers.shp", "skyline_output.shp", "sample.gdb/featuredataset/terrain")
В следующем примере показано использование этого инструмента в автономном скрипте Python.
'''****************************************************************************
Name: Skyline Example
Description: This script demonstrates how to use the
Skyline tool.
****************************************************************************'''
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = 'C:/data'
# Set Local Variables
inPts = "observers.shp"
# Make sure output has a unique name
outFC = arcpy.CreateUniqueName("skyline_output.shp")
inSurface = "sample.gdb/featuredataset/terrain"
obstructionFCs = "buildings.shp; billboards.shp"
surfRad = "1000 meters"
surfElev = "100 meters"
LOD = "FULL_DETAIL"
fromAzim = 0
toAzim = 360
incAzim = 1
maxHorizRad = 0
segSky = "SEGMENT_SKYLINE"
scale = 100
scaleAcc = "ELEVATION"
scaleMethod = "SKYLINE_MAXIMUM"
# Execute Skyline
arcpy.ddd.Skyline(inPts, outFC, inSurface, surfRad, surfElev,
obstructionFCs, LOD, fromAzim, toAzim, incAzim,
maxHorizRad, segSky, scale, scaleAcc, scaleMethod)
Параметры среды
Информация о лицензиях
- Basic: Обязательно 3D Analyst
- Standard: Обязательно 3D Analyst
- Advanced: Обязательно 3D Analyst