Línea de visión (3D Analyst)

Nivel de licencia:BasicStandardAdvanced

Resumen

Determina la visibilidad de las líneas de visión sobre obstáculos formados por una superficie y un dataset multiparche opcional.

Obtenga más información sobre cómo funciona Línea de visión

Ilustración

Línea de visión

Uso

Sintaxis

LineOfSight_3d (in_surface, in_line_feature_class, out_los_feature_class, {out_obstruction_feature_class}, {use_curvature}, {use_refraction}, {refraction_factor}, {pyramid_level_resolution}, {in_features})
ParámetroExplicaciónTipo de datos
in_surface

Dataset LAS, ráster, TIN o superficie de terreno utilizado para determinar la visibilidad.

LAS Dataset Layer; Raster Layer; Terrain Layer; TIN Layer
in_line_feature_class

Las entidades de línea cuyo primer vértice define el punto de observación y el último vértice identifica la ubicación de destino. La altura de la observación y las ubicaciones objetivo se obtienen de los valores Z de las entidades 3D y se interpolan a partir de la superficie para las entidades 2D.

Las líneas 2D también tienen un desplazamiento predeterminado de 1 agregado a su elevación, para elevar los puntos sobre la superficie. Si la entidad tiene un campo OffsetA, su valor se agregará a la altura del punto de observación. Si existe el campo OffsetB, su valor se agregará a la altura de la posición del objetivo.

Feature Layer
out_los_feature_class

La clase de entidad de línea de salida a lo largo de la cual se ha determinado la visibilidad. Se crean dos atributos de campo. VisCode indica la visibilidad a lo largo de la línea, 1 para visible y 2 para no visible. TarIsVis indica la visibilidad del destino, 0 para no visible y 1 para visible.

Feature Class
out_obstruction_feature_class
(Opcional)

Una clase de entidad de puntos opcional que identifica la ubicación de la primera obstrucción sobre la línea de visión del observador a su destino.

Feature Class
use_curvature
(Opcional)

Indica si se debe considerar la curvatura de la tierra para el análisis de la línea de vista. Para habilitar esta opción, la superficie debe tener una referencia espacial definida en las coordenadas proyectadas con unidades z definidas.

  • CURVATURESe tendrá en cuenta la curvatura de la tierra.
  • NO_CURVATURENo se tendrá en cuenta la curvatura de la tierra. Esta es la opción predeterminada.
Boolean
use_refraction
(Opcional)

Indica si se debe tener en cuenta la refracción atmosférica al generar una línea de visión a partir de una superficie funcional. Esta opción no se aplica si se utilizan entidades multiparche.

  • REFRACTIONSe tendrá en cuenta la refracción atmosférica.
  • NO_REFRACTIONNo se tendrá en cuenta la refracción atmosférica. Esta es la opción predeterminada.
Boolean
refraction_factor
(Opcional)

Proporciona un valor que se utilizará en el factor de refracción. El factor de refracción predeterminado es 0,13.

Double
pyramid_level_resolution
(Opcional)

La tolerancia Z o la resolución del tamaño de la ventana del nivel de pirámide de terreno que utilizará esta herramienta. El valor predeterminado es 0, o resolución completa.

Double
in_features
(Opcional)

Una entidad multiparche que puede definir elementos de obstrucción adicionales, como edificios. Las opciones de refracción no se respetan para esta entrada.

Feature Layer

Ejemplo de código

Ejemplo 1 de LineOfSight (ventana de Python)

El siguiente ejemplo muestra cómo usar de esta herramienta en la ventana Python:

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.LineOfSight_3d("tin", "line.shp", "los.shp", "buldings_multipatch.shp", 
                    "obstruction.shp")
Ejemplo 2 de LineOfSight (secuencia de comandos independiente)

El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:

'''*********************************************************************
Name: Sight Line Visibility of Parade Path
Description: This script demonstrates how to create a sight line feature class
             from a pair of observer and target points.
*********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    # Checking out 3D Analyst Extension:
    arcpy.CheckOutExtension('3D')

    # Set Local Variables:
    env.workspace = 'C:/data'

    # Setting up input and output variables:
    obs = "observer_pts.shp"
    tar = "parade_path.shp"
    sightlines = "output_sightlines.shp"
    height = "<None>"
    join_field = "#"
    sampling = 0.5
    direction = "OUTPUT_THE_DIRECTION"
    surface = 'elevation.tif'
    bldgs = 'buildings.shp'

    arcpy.AddMessage("Building sightlines...")
    arcpy.ddd.ConstructSightLines(obs, tar, sightlines, height, height, 
                                  join_field, sampling, direction)
    arcpy.ddd.LineOfSight(surface, sightlines, "Parade_LOS.shp", 
                          "Obstructions.shp", in_features=bldgs)
    
    arcpy.GetMessages(0)
    arcpy.CheckInExtension("3D")

except arcpy.ExecuteError:
    print arcpy.GetMessages()
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)

Entornos

Temas relacionados

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
5/9/2014