Disponible con una licencia de 3D Analyst.
Resumen
Determina la visibilidad de las líneas de visión a través de obstáculos potenciales. Los obstáculos potenciales pueden estar formados por una combinación de rásters, TIN, multiparches y polígonos o líneas extruidos.
Uso
-
Solo los extremos de la línea de entrada se utilizan para definir el observador y el destino. Lo ideal sería que las líneas de visión fueran líneas rectas compuestas por dos vértices que representasen el punto de observación y la ubicación de destino para la cual se determina la visibilidad.
-
Plantéese la posibilidad de utilizar la herramienta Construir líneas de visión si la ubicación del observador está definida mediante entidades de punto y el destino de visibilidad está representado mediante datos almacenados en una clase de entidad diferente.
Esta herramienta no crea nuevas salidas, sino que añade un atributo nuevo a las clases de entidad de líneas de visión de entrada. Si no desea que se modifiquen sus datos de entrada, realice una copia de los mismos y utilice la copia como entrada.
El tipo de geometría de Líneas de visión de entrada debería ser PolylineZ (líneas 3D que tienen valores Z), para de este modo poder realizar el análisis con sentido.
Los obstáculos de entrada pueden ser cualquier combinación de superficies o entidades. Las superficies pueden ser ráster o TIN. Cada tipo de geometría de la capa de entidades de obstrucción debe ser un multiparche, una línea o un polígono. Cada capa de entidad poligonal o de línea debe tener información de altura base y de extrusión o, de lo contrario, su contenido se pasará por alto.
Cada línea de visión de entrada puede estar formada por más de dos vértices, pero solamente se utiliza el primero y el último. Por lo tanto, cada línea de visión será siempre una línea recta.
Los valores Z del primer y último vértice de cada línea de visión son los únicos orígenes de valores Z que se utilizan.
El resultado del análisis se guarda en la tabla de atributos de entidades de la Línea de visión de entrada en un campo de enteros. De manera predeterminada, el nombre de este campo es VISIBLE, pero se puede cambiar con el parámetro Nombre de campo visible.
El resultado puede ser un valor de 1 o 0. Un valor de 1 indica que la línea de visión no está obstruida por ningún obstáculo potencial especificado en el parámetro Obstrucciones, lo que significa que tanto su punto inicial como final están visibles entre sí. Un valor de 0 indica que la línea de visión está obstruida al menos por una superficie o entidad.
Si el campo de resultado (por ejemplo VISIBLE) ya existe en la clase de entidad Línea de visión, su contenido se sobrescribirá. Si la herramienta se ejecuta desde el cuadro de diálogo, aparecerá una advertencia después de que la herramienta detecta que el campo ya existe. Independientemente de cómo se ejecuta la herramienta (por ejemplo, cuadro de diálogo o ventana Python), si los resultados se escriben en un campo existente, se añadirá un mensaje de advertencia a los mensajes de los resultados indicando que puede que los datos se hayan sobrescrito.
La herramienta se ejecutará más rápido si toda la entrada se encuentra en la misma referencia espacial, ya que los datos no se tendrán que proyectar (potencialmente varias veces) para poder comprobar la presencia de obstáculos. Sería especialmente beneficioso para todos los obstáculos que estuvieran en la misma referencia espacial que las demás. La referencia espacial de las líneas de visión no es tan importante, puesto que son más fáciles de proyectar.
- A diferencia de la herramienta Línea de visibilidad, esta herramienta determina si una línea de visión está obstruida, y no el lugar donde ha sufrido la primera obstrucción. No se mantiene ningún registro de qué obstáculos provocan que una determinada línea de visión se obstruya.
Si se desea usar la dirección (acimut y ángulo vertical) de cada línea de visión, es posible escribir esta información en las líneas de visión cuando se utiliza la herramienta Construir líneas de visión para generar las líneas de visión antes de ejecutar esta herramienta.
Sintaxis
Intervisibility_3d (sight_lines, obstructions, {visible_field})
Parámetro | Explicación | Tipo de datos |
sight_lines | Las líneas de visión en 3D. | Feature Layer |
obstructions [obstructions,...] | Una o más clases de entidad o superficies de destino que pueden obstruir las líneas de visión. | Feature Layer, Raster Layer, TIN Layer |
visible_field (Opcional) | Nombre del campo que almacenará los resultados de visibilidad. Si el valor resultante es 0, indica que los puntos de inicio y final de la línea de visión no están visibles entre sí. Si el valor es 1, indica que los puntos de inicio y final de la línea de visión están visibles entre sí. El nombre de campo predeterminado es VISIBLE. | String |
Ejemplo de código
Ejemplo 1 de intervisibilidad (ventana de Python)
En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.
arcpy.CheckOutExtension("3D")
arcpy.env.workspace = "C:/data"
arcpy.Intervisibility_3d("sightlines.shp", "3dbuildings.shp;topo_tin", "Visibility")
Ejemplo 2 de intervisibilidad (ventana independiente)
En el siguiente ejemplo se muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python.Esta secuencia de comandos demuestra cómo se calcula la intervisibilidad de las líneas de visión contra los obstáculos presentados por una superficie o edificios representados por multiparches.
# Import system modules
import arcpy
try:
# Checking out 3D Analyst Extension
arcpy.CheckOutExtension("3D")
# Set environments
arcpy.env.workspace = 'C:/data'
# Setting up input and output variables
sightlines = "My_Sightlines.shp"
surface = "DTM_Tin"
buildings = "My_3D_Buildings.shp"
viz_field_name = "Visibility"
print("Calculating Intervisibility...")
arcpy.Intervisibility_ddd(
sightlines, surface + ';' + buildings, viz_field_name)
except arcpy.ExecuteError:
print(arcpy.GetMessages(2))
finally:
arcpy.CheckInExtension("3D")
Entornos
Información sobre licencias
- ArcGIS for Desktop Basic: Requiere 3D Analyst
- ArcGIS for Desktop Standard: Requiere 3D Analyst
- ArcGIS for Desktop Advanced: Requiere 3D Analyst