Создать область видимости (Анализ растра)

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

Строит области, в которых наблюдатель может видеть объекты на поверхности земли. Входные наблюдаемые точки могут представлять либо наблюдателей (люди, стоящие на земле или наблюдательные посты на пожарных вышках), или объекты наблюдения (ветряки, водонапорные башни, средства передвижения или люди).

Наблюдатели и наблюдаемые объекты могут находиться над поверхностью земли, их высоты используются при определении видимости. Например, видимость, вычисленная для ветряка высотой 300 футов и человека ростом 6 футов, стоящего на земле, обычно будет шире, чем видимость 200-футового ветряка и человека ростом 5 футов.

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

Иллюстрация

Иллюстрация к инструменту Создание области видимости

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

  • Этот инструмент портала для анализа растров доступен, если вы вошли в портал ArcGIS Enterprise с ArcGIS Image Server, настроенным для Анализ растров. Когда инструмент запущен, ArcGIS Pro выступает в качестве клиента, а обработка происходит на серверах, интегрированных с ArcGIS Enterprise. Инструмент портала использует слои портала в качестве входных данных и создает выходные данные на этом же портале.

    Параметр Входной растровый слой поддерживает слой портала, URI или URL сервиса изображений или выходные данные инструмента Создать слой сервера изображений. Входной векторный слой может быть слоем портала или URI либо URL сервиса объектов. Указанный инструмент не поддерживает локальные наборы растровых данных или слои. Хотя вы можете использовать локальные векторные данные или слои как входные данные для инструментов портала, лучше все же использовать слои портала в качестве входных данных.

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

Параметры

ПодписьОписаниеТип данных
Входная поверхность высот

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

Если вертикальные единицы измерения входной поверхности отличаются от горизонтальных, например, в случае, если значения высот выражены в футах, а система координат – метровая, для поверхности должна быть задана вертикальная система координат. Это связано с тем, что инструмент использует вертикальные (z) и горизонтальные (x,y) единицы для вычисления z-фактора для анализа видимости. Без вертикальной системы координат и в отсутствии информации о z-единицах z-единицы будут считаться идентичными единицам x,y. В результате для анализа будет применен внутренний z-коэффициент, равный 1, что может привести к непредвиденным результатам.

Поверхность высот может содержать целочисленные значения или числа с плавающей точкой.

Raster Layer; Image Service; String
Объекты наблюдателей

Точечные объекты, соответствующие при вычислении видимости местоположениям наблюдателей.

Feature Set
Выходное имя

Имя выходного слоя растрового сервиса.

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

String
Оптимизировать для
(Дополнительный)

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

  • СкоростьСкорость обработки будет оптимизирована: в обмен на некоторое снижение точности результата будет достигнута лучшая производительность. Это значение по умолчанию
  • КорректностьТочность результатов будет увеличена за счет более длительного времени обработки.
String
Тип максимального расстояния видимости
(Дополнительный)

Задает способ определения максимального расстояния просмотра.

Если вы изменили тип с Расстояния на Поле, параметр Максимальное расстояние видимости изменится на Поле максимального расстояния видимости.

  • РасстояниеМаксимальное расстояние задается введенным вами значением. Этот метод используется по умолчанию.
  • ПолеМаксимальное расстояние для каждого местоположения наблюдателя будут определяться значениями в указанном поле.
String
Максимальное расстояние видимости
(Дополнительный)

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

Единицами измерения являются Километры, Метры, Сухопутные мили, Международные ярды, Международные футы, Геодезические мили США, Геодезические ярды США и Геодезические футы США.

Значение по умолчанию равно 9 сухопутным милям.

Linear Unit
Поле максимального расстояния видимости
(Дополнительный)

Поле, содержащее максимальное расстояние видимости для каждого наблюдателя. Значения, содержащиеся в поле, должны быть в тех единицах измерения, что и единицы xy входной поверхности высот.

Максимальное расстояние видимости – это предельное расстояние, на котором вычисление области видимости прекращается. За пределами этого расстояния, видимость между точкой наблюдения и наблюдаемыми объектами остается неизвестной.

Field
Тип минимального расстояния видимости
(Дополнительный)

Задает метод, который будет использоваться для определения минимального расстояния видимости.

Если вы изменили тип с Расстояния на Поле, параметр Минимальное расстояние видимости изменится на Поле минимального расстояния видимости.

  • РасстояниеМинимальное расстояние задается введенным вами значением. Этот метод используется по умолчанию.
  • ПолеМинимальное расстояние для каждого местоположения наблюдателя будет определяться значениями в указанном вами поле.
String
Минимальное расстояние видимости
(Дополнительный)

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

Единицами измерения являются Километры, Метры, Сухопутные мили, Международные ярды, Международные футы, Геодезические мили США, Геодезические ярды США и Геодезические футы США.

Linear Unit
Поле минимального расстояния видимости
(Дополнительный)

Поле, содержащее минимальное расстояние видимости для каждого наблюдателя. Значения, содержащиеся в поле, должны быть в тех единицах измерения, что и единицы x,y входной поверхности высот.

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

Field
Расстояния видимости в 3D
(Дополнительный)

Задает, будут ли параметры минимального и максимального расстояния видимости измеряться в 3D или в 2D. 2D-расстояние - простое расстояние по прямой линии, проведенной между проекциями на поверхность уровня моря точки нахождения наблюдателя и точки-цели. Трехмерное расстояние дает более корректное значение - с учетом относительных высот этих точек.

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

Определяет способ определения высоты наблюдателей.

Если вы изменили тип с Высота на Поле, параметр Высота наблюдателей изменится на Поле высоты наблюдателей.

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

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

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

Единицами измерения являются Километры, Метры, Сухопутные мили, Международные ярды, Международные футы, Геодезические мили США, Геодезические ярды США и Геодезические футы США.

Linear Unit
Поле высоты наблюдателя
(Дополнительный)

Поле, содержащее высоты наблюдателей. Значение, содержащееся в поле, должно быть в тех единицах измерения, что и единицы z входной поверхности высот.

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

Field
Тип высоты наблюдателя
(Дополнительный)

Определяет способ определения высоты наблюдателей.

Если вы изменили тип с Высота на Поле, параметр Высота наблюдателей изменится на Поле высоты наблюдателей.

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

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

Единицами измерения являются Километры, Метры, Сухопутные мили, Международные ярды, Международные футы, Геодезические мили США, Геодезические ярды США и Геодезические футы США.

Значение по умолчанию равно 6 международных футов.

Linear Unit
Поле высоты наблюдателей
(Дополнительный)

Поле, содержащее высоты наблюдателей. Значение, содержащееся в поле, должно быть в тех единицах измерения, что и единицы z входной поверхности высот.

Field
Тип высоты цели
(Дополнительный)

Задает способ определения высоты цели.

Если вы изменили тип с Высота на Поле, параметр Высота цели изменится на Поле высоты цели.

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

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

Единицами измерения являются Километры, Метры, Сухопутные мили, Международные ярды, Международные футы, Геодезические мили США, Геодезические ярды США и Геодезические футы США.

Linear Unit
Поле высоты цели
(Дополнительный)

Поле, содержащее высоты целей. Значение, содержащееся в поле, должно быть в тех единицах измерения, что и единицы z входной поверхности высот.

Field
Выходное имя растра над уровнем поверхности
(Дополнительный)

Имя выходного растра над уровнем поверхности (AGL). AGL создает растр, в котором значение каждой ячейки является минимальной высотой, которая должна быть добавлена к невидимой ячейке, чтобы сделать ее видимой хотя бы для одного наблюдателя. Ячейки, которые уже были видны, в выходном растре будут иметь значение 0.

String

Производные выходные данные

ПодписьОписаниеТип данных
Выходной растр

Выходной растр видимости.

Raster Layer
Выходной растр над уровнем поверхности

Выходной растр над уровнем поверхности.

Raster Layer

arcpy.ra.CreateViewshed(inputElevationSurface, inputObserverFeatures, outputName, {optimizeFor}, {maximumViewingDistanceType}, {maximumViewingDistance}, {maximumViewingDistanceField}, {minimumViewingDistanceType}, {minimumViewingDistance}, {minimumViewingDistanceField}, {viewingDistanceIs3D}, {observersElevationType}, {observersElevation}, {observersElevationField}, {observersHeightType}, {observersHeight}, {observersHeightField}, {targetHeightType}, {targetHeight}, {targetHeightField}, {aboveGroundLevelOutputName})
ИмяОписаниеТип данных
inputElevationSurface

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

Если вертикальные единицы измерения входной поверхности отличаются от горизонтальных, например, в случае, если значения высот выражены в футах, а система координат – метровая, для поверхности должна быть задана вертикальная система координат. Это связано с тем, что инструмент использует вертикальные (z) и горизонтальные (x,y) единицы для вычисления z-фактора для анализа видимости. Без вертикальной системы координат и в отсутствии информации о z-единицах z-единицы будут считаться идентичными единицам x,y. В результате для анализа будет применен внутренний z-коэффициент, равный 1, что может привести к непредвиденным результатам.

Поверхность высот может содержать целочисленные значения или числа с плавающей точкой.

Raster Layer; Image Service; String
inputObserverFeatures

Точечные объекты, соответствующие при вычислении видимости местоположениям наблюдателей.

Feature Set
outputName

Имя выходного слоя растрового сервиса.

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

String
optimizeFor
(Дополнительный)

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

  • SPEEDСкорость обработки будет оптимизирована: в обмен на некоторое снижение точности результата будет достигнута лучшая производительность. Это значение по умолчанию
  • ACCURACYТочность результатов будет увеличена за счет более длительного времени обработки.
String
maximumViewingDistanceType
(Дополнительный)

Задает способ определения максимального расстояния просмотра.

  • DISTANCEМаксимальное расстояние задается введенным вами значением. Этот метод используется по умолчанию.
  • FIELDМаксимальное расстояние для каждого местоположения наблюдателя будут определяться значениями в указанном поле.
String
maximumViewingDistance
(Дополнительный)

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

Единицами измерения являются Kilometers, Meters, MilesInt, YardsInt, FeetInt, Miles, Yards и Feet.

Значение по умолчанию равно 9 сухопутным милям.

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

Поле, содержащее максимальное расстояние видимости для каждого наблюдателя. Значения, содержащиеся в поле, должны быть в тех единицах измерения, что и единицы xy входной поверхности высот.

Максимальное расстояние видимости – это предельное расстояние, на котором вычисление области видимости прекращается. За пределами этого расстояния, видимость между точкой наблюдения и наблюдаемыми объектами остается неизвестной.

Field
minimumViewingDistanceType
(Дополнительный)

Задает метод, который будет использоваться для определения минимального расстояния видимости.

  • DISTANCEМинимальное расстояние задается введенным вами значением. Этот метод используется по умолчанию.
  • FIELDМинимальное расстояние для каждого местоположения наблюдателя будет определяться значениями в указанном вами поле.
String
minimumViewingDistance
(Дополнительный)

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

Единицами измерения являются Kilometers, Meters, MilesInt, YardsInt, FeetInt, Miles, Yards и Feet.

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

Поле, содержащее минимальное расстояние видимости для каждого наблюдателя. Значения, содержащиеся в поле, должны быть в тех единицах измерения, что и единицы x,y входной поверхности высот.

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

Field
viewingDistanceIs3D
(Дополнительный)

Задает, будут ли параметры минимального и максимального расстояния видимости измеряться в 3D или в 2D. 2D-расстояние - простое расстояние по прямой линии, проведенной между проекциями на поверхность уровня моря точки нахождения наблюдателя и точки-цели. Трехмерное расстояние дает более корректное значение - с учетом относительных высот этих точек.

  • 2DРасстояние видимости будет вычисляться как 2D-расстояние. Это значение по умолчанию
  • 3DРасстояние видимости будет вычисляться как 3D-расстояние.
Boolean
observersElevationType
(Дополнительный)

Определяет способ определения высоты наблюдателей.

  • ELEVATIONВысота наблюдателей будет определяться введенным вами значением. Этот метод используется по умолчанию.
  • FIELDВысота каждого наблюдателя будет определяться значениями в указанном вами поле.
String
observersElevation
(Дополнительный)

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

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

Единицами измерения являются Kilometers, Meters, MilesInt, YardsInt, FeetInt, Miles, Yards и Feet.

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

Поле, содержащее высоты наблюдателей. Значение, содержащееся в поле, должно быть в тех единицах измерения, что и единицы z входной поверхности высот.

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

Field
observersHeightType
(Дополнительный)

Определяет способ определения высоты наблюдателей.

  • HEIGHTВысота наблюдателей определяется введенным вами значением. Этот метод используется по умолчанию.
  • FIELDВысота каждого местоположения наблюдателя будет определяться значениями в указанном вами поле.
String
observersHeight
(Дополнительный)

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

Единицами измерения являются Kilometers, Meters, MilesInt, YardsInt, FeetInt, Miles, Yards и Feet.

Значение по умолчанию равно 6 международных футов.

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

Поле, содержащее высоты наблюдателей. Значение, содержащееся в поле, должно быть в тех единицах измерения, что и единицы z входной поверхности высот.

Field
targetHeightType
(Дополнительный)

Задает способ определения высоты цели.

  • HEIGHTВысота цели будет определяться заданным вами значением. Этот метод используется по умолчанию.
  • FIELDВысота каждой цели будет определяться значениями в указанном вами поле.
String
targetHeight
(Дополнительный)

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

Единицами измерения являются Kilometers, Meters, MilesInt, YardsInt, FeetInt, Miles, Yards и Feet.

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

Поле, содержащее высоты целей. Значение, содержащееся в поле, должно быть в тех единицах измерения, что и единицы z входной поверхности высот.

Field
aboveGroundLevelOutputName
(Дополнительный)

Имя выходного растра над уровнем поверхности (AGL). AGL создает растр, в котором значение каждой ячейки является минимальной высотой, которая должна быть добавлена к невидимой ячейке, чтобы сделать ее видимой хотя бы для одного наблюдателя. Ячейки, которые уже были видны, в выходном растре будут иметь значение 0.

String

Производные выходные данные

ИмяОписаниеТип данных
outputRaster

Выходной растр видимости.

Raster Layer
outputAboveGroundLevelRaster

Выходной растр над уровнем поверхности.

Raster Layer

Пример кода

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

В этом примере создается сервис изображений обоюдной видимости по заданной поверхности и точкам наблюдателей.

import arcpy

arcpy.ra.CreateViewshed(
    "https://myserver/rest/services/elevation/ImageServer", 
    "https://myserver/rest/services/destination/FeatureServer/0", 
    "outview1", "SPEED", "DISTANCE", "9 Miles", "#", "DISTANCE",
    "0 Meters", "#", "2D", "ELEVATION", "#", "#", "HEIGHT",
    "6 Feet", "#", "HEIGHT", "3 Feet", "#", "outagl1")
CreateViewshed, пример 2 (автономный скрипт)

В этом примере создается сервис изображений обоюдной видимости по заданной поверхности и точкам наблюдателей.

#---------------------------------------------------------------------------
# Name: CreateViewshed_example02.py
# Description: Creates a viewshed image service raster from given surface
#   and observer points.
#
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inSurface = "https://myserver/rest/services/elevation/ImageServer"
inObservers = "https://myserver/rest/services/destination/FeatureServer/0"
outputViewshed = "outview1"
optimizeFor = "Speed"
maxDistType = "Distance"
maxDist = "9 Miles"
maxDistField = "#"
minDistType = "Distance"
minDist = "0 Miles"
minDistField = "#"
distanceIs3D = "2D"
obsElevationType = "Elevation"
obsElevation = "#"
obsElevationField = "#"
obsOffsetType = "Height"
obsOffset = "6 Feet"
obsOffsetField = "#"
surfOffsetType = "Height"
surfOffset = "3 Feet"
surfOffsetField = "#"
outputAgl = "outagl1"

# Execute Create Viewshed raster analysis tool
arcpy.ra.CreateViewshed(
    inSurface, inObservers, outputViewshed, optimizeFor,
    maxDistType, maxDist, maxDistField, minDistType, minDist,
    minDistField, distanceIs3D, obsElevationType, obsElevation,
    obsElevationField, obsOffsetType, obsOffset, obsOffsetField,
    surfOffsetType, surfOffset, surfOffsetField, outputAgl)

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

  • Basic: Обязательно ArcGIS Image Server
  • Standard: Обязательно ArcGIS Image Server
  • Advanced: Обязательно ArcGIS Image Server

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