Orientación de superficie (3D Analyst)
Resumen
Calcula la orientación o la dirección de la pendiente descendente más empinada, de cada triángulo en una TIN o dataset de terreno y escribe la salida como una clase de entidad poligonal.
Ilustración
Uso
Cada orientación del triángulo de superficie se determina en unidades de grados, luego de haber asignado un código de orientación basado en la dirección cardinal u ordinal de su pendiente. 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–45
3
Este
45–135
4
Sureste
135–180
5
Sur
180–225
6
Suroeste
225–270
7
Oeste
270–315
8
Noroeste
315–337.5
9
Norte
337.5–360
Los triángulos contiguos del mismo código se fusionan en una entidad.
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
Parámetro | Explicación | Tipo de datos |
in_surface |
La superficie TIN o de terreno de entrada. | Terrain Layer; TIN Layer |
out_feature_class |
La clase de entidad de salida. | 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 |
Ejemplo de código
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.SurfaceVolume_3d("sample.gdb/featuredataset/terrain", "surf_vol.txt",
"ABOVE", 300, 1, 5)
El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:
'''****************************************************************************
Name: Surface Volume Example
Description: This script demonstrates how to use the
Surface Volume tool.
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions, sys, traceback
try:
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
# Set Local Variables
inSurface = "elevation_tin"
#Execute SurfaceVolume
result = arcpy.SurfaceVolume_3d(inSurface, "", "ABOVE", "300", "1", "5")
print result.GetMessage(0)
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)