Resumen
Crea entidades poligonales que representan mediciones de aspecto derivadas de una superficie de dataset de TIN, de terreno o LAS.
Ilustración
Uso
El aspecto representa la orientación horizontal de una superficie y se determina en unidades de grados. A cada faceta de la superficie se le asigna un valor de código que representa la dirección cardinal u ordinal de su pendiente y las áreas contiguas con el mismo código se fusionan en una entidad. El esquema de clasificación predeterminado se define de la siguiente manera:
Código Dirección de la pendiente Rango del ángulo de la pendiente -1
Plano
Sin pendiente
1
Norte
0° – 22.5°
2
Noreste
22.5° – 67.5°
3
Este
67.5° – 112.5°
4
Sureste
112.5° – 157.5°
5
Sur
157.5° – 202.5°
6
Suroeste
202.5° – 247.5°
7
Oeste
247.5° – 292.5°
8
Noroeste
292.5° – 337.5°
9
Norte
337.5° – 360°
Las definiciones de clases personalizadas se pueden proporcionar a través de una Tabla de cortes de clase. La tabla debe tener dos columnas donde la primera indique el punto de corte de orientación en grados y la segunda defina su valor de código. Considere los siguientes ejemplos:
Corte Aspect_Code 90.0
1
180.0
2
270.0
3
360.0
4
La tabla puede estar en cualquier formato compatible (.dbf, .txt, o tabla de geodatabase). El nombre de los campos son irrelevantes, ya que el primero siempre se utilizará para los cortes de clase y el segundo para los códigos de orientación.
Sintaxis
SurfaceAspect_3d (in_surface, out_feature_class, {class_breaks_table}, {aspect_field}, {pyramid_level_resolution})
Parámetro | Explicación | Tipo de datos |
in_surface | La superficie del dataset de TIN, terreno o LAS que se va a procesar. | LAS Dataset Layer; Terrain Layer; TIN Layer |
out_feature_class | La clase de entidad que generará esta herramienta. | Feature Class |
class_breaks_table (Opcional) | Una tabla que contiene los cortes de clasificación que se utilizarán para definir los rangos de orientación en la clase de entidad de salida. | Table |
aspect_field (Opcional) | El campo que contiene los valores del código de orientación. | String |
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 |
Muestra de código
Ejemplo 1 de SurfaceAspect (ventana de Python)
En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.SurfaceAspect_3d("sample.gdb/featuredataset/terrain", "sample.gdb/featuredataset/terrain_aspect")
Ejemplo 2 de SurfaceAspect (secuencia de comandos independiente)
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''****************************************************************************
Name: SurfaceAspect Example
Description: This script demonstrates how to use the
SurfaceAspect and SurfaceSlope tools to generate a polygon
that contains the intersection of both
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
try:
# List all TINs in workspace
listTINs = arcpy.ListDatasets("","TIN")
# Determine whether the list contains any TINs
if len(listTINs) > 0:
for dataset in listTINs:
print dataset
# Set Local Variables
aspect = arcpy.CreateUniqueName("Aspect.shp")
slope = arcpy.CreateUniqueName("Slope.shp")
outFC = dataset + "_Aspect_Slope.shp"
#Execute SurfaceAspect
arcpy.SurfaceAspect_3d(dataset, aspect)
#Execute SurfaceSlope
arcpy.SurfaceSlope_3d(dataset, slope)
#Execute SurfaceSlope
print "Starting Intersect"
arcpy.Intersect_analysis(aspect + " #;" + slope + " #", outFC, "ALL")
print "Completed intersect for " + dataset
del aspect, slope, outFC
else:
print "There are no TINs in the " + env.workspace + " directory."
except:
# Returns any other error messages
print arcpy.GetMessages(2)
del arcpy, listTINs
Entornos
Información sobre licencias
- ArcGIS Desktop Basic: Requiere 3D Analyst
- ArcGIS Desktop Standard: Requiere 3D Analyst
- ArcGIS Desktop Advanced: Requiere 3D Analyst