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

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

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

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

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

Иллюстрация

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

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

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

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

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

Параметры

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Единицами измерения могут быть километры, метры, мили или футы.

По умолчанию используются мили.

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

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

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

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

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

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

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

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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

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

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

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

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

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

Метод, которым определяется высота наблюдателей.

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

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

Это высоты местоположений наблюдателей.

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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

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

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

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

Метод, которым определяется высота наблюдателей.

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

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

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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-коэффициента анализа видимости использует вертикальные (Z) и горизонтальные (XY) единицы. Без вертикальной системы координат, а следовательно, в отсутствии информации о Z-единицах инструмент будет считать Z-единицы идентичными XY-единицам. В результате для анализа будет применен внутренний Z-коэффициент, равный 1, что может привести к непредвиденным результатам.

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

Raster Layer; Image Service; String
inputObserverFeatures

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

Feature Set
outputName

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

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

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

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

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

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

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

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

Единицами измерения могут быть километры, метры, мили или футы.

По умолчанию используются мили.

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

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

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

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

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

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

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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

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

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

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

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

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

Метод, которым определяется высота наблюдателей.

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

Это высоты местоположений наблюдателей.

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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

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

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

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

Метод, которым определяется высота наблюдателей.

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

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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

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

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

Метод, которым определяется высота целей.

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

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

Единицами измерения могут быть километры, метры, мили или футы.

Единицы измерения по умолчанию – метры.

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

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