Exposition de surface (3D Analyst)
Récapitulatif
Calcule l'exposition, ou le sens de la pente descendante la plus raide, de chaque triangle dans un TIN ou jeu de données de MNT, et enregistre la sortie en tant que classe d'entités surfaciques.
Illustration
![]() |
Utilisation
L'exposition de chaque triangle de la surface est définie en degrés, puis un code d'exposition lui est affecté en fonction de la direction cardinale ou ordinale de sa pente. Le jeu de classification par défaut est défini comme suit :
Code
Direction de pente
Plage d'angle de pente
-1
Plat standard
Pas de pente
1
Nord
0–22.5
2
Nord-Est
22.5–45
3
Est
45–135
4
Sud-Est
135–180
5
Sud
180–225
6
Sud-Ouest
225–270
7
Ouest
270–315
8
Nord-Ouest
315–337.5
9
Nord
337.5–360
Les triangles contigus du même code sont combinés en une seule entité.
Il est possible de spécifier des définitions de classe personnalisées via une Table de bornes de classes. La table doit comporter deux colonnes dont la première indique le point de rupture d'exposition en degrés et la seconde définit sa valeur de code. Prenons l'exemple suivant :
Interruption
Aspect_Code
90.0
1
180.0
2
270.0
3
360.0
4
La table peut être enregistrée dans n'importe quel format pris en charge (.dbf, .txt ou une table de géodatabase). Les noms des champs n'ont pas d'importance, étant donné que le premier sera toujours utilisé pour les bornes de classe et le second pour les codes d'exposition.
Syntaxe
| Paramètre | Explication | Type de données |
in_surface |
Surface de MNT ou TIN en entrée. | Terrain Layer; TIN Layer |
out_feature_class |
The output feature class. | Feature Class |
class_breaks_table (Facultatif) |
Table contenant les bornes utilisées pour définir les plages d'exposition dans la classe d'entités en sortie. | Table |
aspect_field (Facultatif) |
Champ contenant les valeurs de code d'exposition. | String |
pyramid_level_resolution (Facultatif) |
The z-tolerance or window size resolution of the terrain pyramid level that will be used by this tool. The default is 0, or full resolution. | Double |
Exemple de code
The following sample demonstrates the use of this tool in the Python window:
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)
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''****************************************************************************
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)
