Crear cuenca visual (Análisis de ráster)

Resumen

Crea áreas en las que un observador puede ver objetos sobre el terreno. Los puntos de observador de entrada pueden representar observadores (como por ejemplo, personas en el suelo o puestos de vigilancia en una torre de control de incendios) u objetos observados (como por ejemplo aerogeneradores, torres de agua, vehículos u otras personas).

Tanto los observadores como los objetos observados pueden tener una altura por encima del suelo y estas alturas se utilizan para determinar la visibilidad. Por ejemplo, una cuenca visual calculada para aerogeneradores de 90 metros y una persona de 1,80 m de pie en el suelo normalmente será mayor que una cuenca visual calculada para aerogeneradores de 60 metros y una persona de 1,50 m.

La capa de resultados registra la cantidad de veces que los puntos de observación de entrada pueden ver cada ubicación de celda en el ráster de superficie de entrada. Las celdas no visibles reciben valores NoData.

Ilustración

Herramienta Crear cuenca visual

Uso

  • Esta herramienta de portal de análisis ráster está disponible cuando se inicia sesión en un ArcGIS Enterprise Enlace a información sobre el análisis en el portal de ArcGIS Enterprise que tiene un ArcGIS Image Server enlace a Qué es ArcGIS Image Server configurado para Raster Analysis Enlace a Configurar e implementar análisis de ráster. Cuando se invoca la herramienta, ArcGIS Pro funciona como cliente y tiene lugar el procesamiento en los servidores federados con ArcGIS Enterprise. La herramienta del portal acepta las capas de su portal como entrada y crea la salida en su portal.

    La capa ráster de entrada admite una capa del portal, una URI o URL de un servicio de imágenes o la salida procedente de la herramienta Crear capa de servidor de imágenes. La capa de entidades de entrada puede ser una capa del portal o una URI o URL de un servicio de entidades. Esta herramienta no admite capas o datos ráster locales. Aunque puede usar las capas y los datos de entidades locales como entradas de esta herramienta del portal, la práctica recomendada es usar capas del portal como entrada.

  • La visibilidad de cada centro de celda viene determinada por una prueba de línea de visión entre el destino y el observador.

Sintaxis

arcpy.ra.CreateViewshed(inputElevationSurface, inputObserverFeatures, outputName, {optimizeFor}, {maximumViewingDistanceType}, {maximumViewingDistance}, {maximumViewingDistanceField}, {minimumViewingDistanceType}, {minimumViewingDistance}, {minimumViewingDistanceField}, {viewingDistanceIs3D}, {observersElevationType}, {observersElevation}, {observersElevationField}, {observersHeightType}, {observersHeight}, {observersHeightField}, {targetHeightType}, {targetHeight}, {targetHeightField}, {aboveGroundLevelOutputName})
ParámetroExplicaciónTipo de datos
inputElevationSurface

La superficie de elevación que se va a utilizar para calcular la cuenca visual.

Si la unidad vertical de la superficie de entrada es distinta de la unidad horizontal, por ejemplo, cuando los valores de elevación se representan en pies, pero el sistema de coordenadas está en metros, la superficie debe tener definido un sistema de coordenadas verticales. Esto se debe a que la herramienta utiliza las unidades verticales (Z) y horizontales (XY) para calcular un factor z para el análisis de la cuenca visual. Sin un sistema de coordenadas verticales y, por lo tanto, sin información de unidad Z disponible, la herramienta considerará que la unidad Z es la misma que la unidad XY. Como resultado, se utilizará un factor z interno de 1.0 para el análisis, lo que puede dar lugar a resultados inesperados.

La superficie de elevación puede ser un entero o un punto flotante.

Raster Layer; Image Service; String
inputObserverFeatures

Las entidades de puntos que representan las ubicaciones del observador al calcular las cuencas visuales.

Feature Set
outputName

Nombre del servicio ráster de salida.

El nombre predeterminado se basa en el nombre de la herramienta y en el nombre de la capa de entrada. Si el nombre de capa ya existe, se le pedirá que indique otro nombre.

String
optimizeFor
(Opcional)

El método de optimización que se va a utilizar para calcular la cuenca visual.

  • SPEEDEste método optimiza la velocidad de procesamiento y ajusta la exactitud del resultado para obtener un mayor rendimiento. Esta es la opción predeterminada.
  • ACCURACYEste método está optimizado para la exactitud en los resultados, en detrimento de un tiempo de procesamiento más largo.
String
maximumViewingDistanceType
(Opcional)

El método que se usará para determinar la distancia de visualización máxima.

  • DISTANCELa distancia máxima viene definida por un valor especificado por el usuario. Este es el método predeterminado.
  • FIELD La distancia máxima de cada ubicación de observador viene determinada por los valores de un campo especificado por el usuario.
String
maximumViewingDistance
(Opcional)

Es una distancia de valor límite en la que se detiene el cómputo de las áreas visibles. Más allá de esta distancia, no se sabe si los puntos de observador y el resto de objetos pueden verse mutuamente.

Las unidades pueden ser kilómetros, metros, millas, yardas o pies.

La opción predeterminada son las millas.

Linear Unit
maximumViewingDistanceField
(Opcional)

Este campo se puede usar para especificar la distancia de visualización máxima para cada observador. Los valores contenidos en el campo deberán estar expresados en la misma unidad que la unidad XY de la superficie de elevación de entrada.

La distancia de visualización máxima es una distancia de valor límite en la que se detiene el cómputo de las áreas visibles. Más allá de esta distancia, no se sabe si los puntos de observador y el resto de objetos pueden verse mutuamente.

Field
minimumViewingDistanceType
(Opcional)

Elija el método que se usará para determinar la distancia visible mínima.

  • DISTANCELa distancia mínima viene definida por un valor especificado por el usuario. Este es el método predeterminado.
  • FIELD La distancia mínima de cada ubicación de observador viene determinada por los valores de un campo especificado por el usuario.
String
minimumViewingDistance
(Opcional)

Es la distancia en la que empieza el cómputo de las áreas visibles. Las celdas de la superficie que están a menos de esta distancia no son visibles en la salida, pero pueden seguir bloqueando la visibilidad de las celdas situadas entre la distancia de visualización mínima y la máxima.

Las unidades pueden ser kilómetros, metros, millas, yardas o pies.

La unidad predeterminada es el metro.

Linear Unit
minimumViewingDistanceField
(Opcional)

Este campo se puede usar para especificar la distancia de visualización mínima para cada observador. Los valores contenidos en el campo deberán estar expresados en la misma unidad que la unidad XY de la superficie de elevación de entrada.

La distancia de visualización mínima define dónde empieza el cómputo de las áreas visibles. Las celdas de la superficie que están a menos de esta distancia no son visibles en la salida, pero pueden seguir bloqueando la visibilidad de las celdas situadas entre la distancia de visualización mínima y la máxima.

Field
viewingDistanceIs3D
(Opcional)

Especifique si los parámetros de distancia de visualización mínima y máxima se van a medir de forma tridimensional o bidimensional. Una distancia 2D es la distancia lineal simple medida entre un observador y el objetivo utilizando sus ubicaciones proyectadas a nivel del mar. Una distancia 3D ofrece un valor más realista al tener en cuenta las alturas relativas.

  • 2DLa distancia de visualización se mide en la distancia 2D. Esta es la opción predeterminada.
  • 3DLa distancia de visualización se mide en la distancia 3D
Boolean
observersElevationType
(Opcional)

El método que se usará para determinar la elevación de los observadores.

  • ELEVATIONLa elevación del observador viene definida por un valor especificado por el usuario. Este es el método predeterminado.
  • FIELDLa elevación de cada ubicación de observador viene determinada por los valores de un campo especificado por el usuario.
String
observersElevation
(Opcional)

Es la elevación de las ubicaciones de los observadores.

Si no se especifica este parámetro, la elevación del observador se obtendrá del ráster de superficie mediante interpolación bilineal. Si se establece un valor para este parámetro, ese valor se aplicará a todos los observadores. Para especificar valores diferentes para cada observador, establezca este parámetro en un campo en las entidades de observador de entrada.

Las unidades pueden ser kilómetros, metros, millas, yardas o pies.

La unidad predeterminada es el metro.

Linear Unit
observersElevationField
(Opcional)

Este campo se puede usar para especificar la elevación de los observadores. Los valores contenidos en el campo deberán estar expresados en la misma unidad que la unidad Z de la superficie de elevación de entrada.

Si no se especifica este parámetro, la elevación del observador se obtendrá del ráster de superficie mediante interpolación bilineal.

Field
observersHeightType
(Opcional)

El método que se usará para determinar la altura de los observadores.

  • HEIGHTLa altura del observador se obtiene del valor especificado. Este es el método predeterminado.
  • FIELD La altura de cada ubicación de observador viene determinada por los valores de un campo especificado por el usuario.
String
observersHeight
(Opcional)

Es la altura utilizada para las ubicaciones de los observadores.

Las unidades pueden ser kilómetros, metros, millas, yardas o pies.

La unidad predeterminada es el metro.

Linear Unit
observersHeightField
(Opcional)

Este campo se puede usar para especificar la altura de los observadores. Los valores contenidos en el campo deberán estar expresados en la misma unidad que la unidad Z de la superficie de elevación de entrada.

Field
targetHeightType
(Opcional)

El método que se usará para determinar la altura de los objetivos.

  • HEIGHTLa altura del objetivo se obtiene del valor especificado. Este es el método predeterminado.
  • FIELD La altura de cada objetivo viene determinada por los valores de un campo especificado por el usuario.
String
targetHeight
(Opcional)

Es la altura de estructuras o personas en el suelo, utilizada para establecer la visibilidad. La cuenca visual resultante se compone de las áreas en las que un punto de observador puede ver estos otros objetos. Lo contrario también es cierto; los objetos pueden ver un punto de observador.

Las unidades pueden ser kilómetros, metros, millas, yardas o pies.

La unidad predeterminada es el metro.

Linear Unit
targetHeightField
(Opcional)

Este campo se usa para especificar la altura de los objetivos. Los valores contenidos en el campo deberán estar expresados en la misma unidad que la unidad Z de la superficie de elevación de entrada.

Field
aboveGroundLevelOutputName
(Opcional)

El nombre del ráster sobre el nivel del suelo (AGL) de salida. El resultado del AGL es un ráster en el que cada valor de celda es la altura mínima que se debe agregar a una celda por lo demás no visible para que resulte visible al menos para un observador. Se asignará 0 a las celdas que ya estaban visibles en este ráster de salida.

String

Salida derivada

NombreExplicaciónTipo de datos
outputRaster

El ráster de cuenca visual de salida.

Capa ráster
outputAboveGroundLevelRaster

El ráster sobre el nivel del suelo de salida.

Capa ráster

Muestra de código

Ejemplo 1 de CreateViewshed (ventana de Python)

En este ejemplo se crea un servicio de imágenes de cuenca visual usando la superficie dada y puntos de observador.

import arcpy

arcpy.CreateViewshed_ra(
    "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")
Ejemplo 2 de CreateViewshed (script independiente)

En este ejemplo se crea un servicio de imágenes de cuenca visual usando la superficie dada y puntos de observador.

#---------------------------------------------------------------------------
# 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.CreateViewshed_ra(
    inSurface, inObservers, outputViewshed, optimizeFor,
    maxDistType, maxDist, maxDistField, minDistType, minDist,
    minDistField, distanceIs3D, obsElevationType, obsElevation,
    obsElevationField, obsOffsetType, obsOffset, obsOffsetField,
    surfOffsetType, surfOffset, surfOffsetField, outputAgl)

Información de licenciamiento

  • Basic: Requiere ArcGIS Image Server
  • Standard: Requiere ArcGIS Image Server
  • Advanced: Requiere ArcGIS Image Server

Temas relacionados