Barrera de horizonte (3D Analyst)

Resumen

Genera una clase de entidad multiparche que representa una barrera de horizonte o un volumen de sombra.

Más información sobre cómo funciona Barrera de horizonte

Ilustración

Skyline Barrier

Uso

Sintaxis

SkylineBarrier_3d (in_observer_point_features, in_features, out_feature_class, {min_radius_value_or_field}, {max_radius_value_or_field}, {closed}, {base_elevation}, {project_to_plane})
ParámetroExplicaciónTipo de datos
in_observer_point_features

La clase de entidad de puntos que contiene los puntos de observador.

Feature Layer
in_features

La clase de entidad de línea de entrada que representa los horizontes, o la clase de entidad multiparche de entrada que representa las siluetas.

Feature Layer
out_feature_class

La clase de entidad de salida en la que se ubica la barrera de horizonte o el volumen de sombra.

Feature Class
min_radius_value_or_field
(Opcional)

El radio mínimo al cual deben extenderse las aristas del triángulo desde el punto de observador. El valor predeterminado es 0, que significa sin mínimo.

Linear Unit; Field
max_radius_value_or_field
(Opcional)

El radio máximo al cual deben extenderse las aristas del triángulo desde el punto de observador. El valor predeterminado es 0, que significa sin máximo.

Linear Unit; Field
closed
(Opcional)

Si cerrar la barrera de horizonte con un borde y una base, de manera que el multiparche resultante parezca un sólido.

  • NO_CLOSEDNo se agrega ningún borde o base al multiparche; sólo se representa el multiparche que denota la superficie que va desde el observador hasta el horizonte. Esta es la opción predeterminada.
  • CLOSED Se agregan un borde y una base al multiparche para formar lo que parece ser un sólido cerrado.
Boolean
base_elevation
(Opcional)

Elevación de la base del multiparche cerrado; se ignora si la barrera no se va a cerrar. El valor predeterminado es 0.

Linear Unit; Field
project_to_plane
(Opcional)

Si los extremos delantero (más cerca al observador) y trasero (más lejos del observador) de la barrera deben proyectarse en un plano vertical. Esto se marca (se activa), por lo general, para crear un volumen de sombra.

  • NO_PROJECT_TO_PLANELa barrera se extenderá desde el punto de observador hasta el horizonte (o más cerca o más lejos si se proporcionan valores que no son cero para el radio mínimo y el radio máximo). Esta es la opción predeterminada.
  • PROJECT_TO_PLANE La barrera se extenderá desde un plano vertical hasta un plano vertical.
Boolean

Ejemplo de código

Ejemplo 1 de SkylineBarrier (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.SkylineBarrier_3d("observers.shp", "skyline_outline.shp", "barrier_output.shp")
Ejemplo 2 de SkylineBarrier (secuencia de comandos independiente)

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

'''****************************************************************************
Name: Skyline Barrier Example
Description: This script demonstrates how to use the 
             Skyline Barrier tool.

****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    # Obtain a license for the ArcGIS 3D Analyst extension
    arcpy.CheckOutExtension('3D')
    # Set environment settings
    env.workspace = 'C:/data'
    # Set Local Variables
    inPts = 'observers.shp'
    inLine = 'skyline.shp'
    outFC = 'output_barriers.shp'
    minRadius = '0 METERS'
    maxRadius = '200 METERS'
    
    #Execute SkylineBarrier
    arcpy.SkylineBarrier_3d(inPts, inLine, outFC, minRadius,
                          maxRadius, 'CLOSED')

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

9/11/2013