Profil de pile (3D Analyst)

Niveau de licence :De baseStandardAvancé

Récapitulatif

Cet outil permet de créer une table et un diagramme facultatif indiquant le profil d'entités linéaires sur une ou plusieurs surfaces multipatch, raster, TIN ou de MNT.

Illustration

Exemple de Stack Profile

Utilisation

Syntaxe

StackProfile_3d (in_line_features, profile_targets, out_table, {out_graph})
ParamètreExplicationType de données
in_line_features

Entités linéaires qui seront profilées sur les entrées de la surface.

Feature Layer
profile_targets
[profile_targets,...]

Un ou plusieurs entités multipatch et jeux de données raster, de MNT ou TIN contribuant au modèle de surface profilé.

Feature Layer; Raster Layer; Terrain Layer; TIN Layer
out_table

Table en sortie comportant les valeurs obtenues par interpolation des entités linéaires en entrée sur les cibles de pile.

Table
out_graph
(Facultatif)

Nom en mémoire du diagramme en sortie facultatif pouvant être enregistré sur disque avec l'outil Enregistrer un diagramme.

Graph

Exemple de code

1er exemple d'utilisation de l'outil StackProfile (fenêtre Python)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.StackProfile_3d('profile_line.shp', 'dem.tif; buildings.shp', 
                     'profile_values.dbf', 'Surface Profile')
2e exemple de l'outil StackProfile (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :

'''**********************************************************************
Name: Save Profiles to Graph Files
Description: Creates profile graphs of multipatch and surface features, 
             which are then saved as graph files.
**********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback

# Set Local Variables
profileLine = arcpy.GetParameterAsText(0)
profileTargets = arcpy.GetParameterAsText(1) # input las files
profileTable = arcpy.CreateUniqueName('profile_table', 'in_memory')
graphName = "Sample Graph"
outGraph = arcpy.GetParameterAsText(2) # output graph file

try:
    arcpy.CheckOutExtension('3D')
    # Execute StackProfile
    arcpy.ddd.StackProfile(profileLine, profileTargets, profileTable, graphName)
    # Execute SaveGraph
    arcpy.management.SaveGraph(graphName, outGraph)
    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)

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic : Requis 3D Analyst
ArcGIS for Desktop Standard : Requis 3D Analyst
ArcGIS for Desktop Advanced : Requis 3D Analyst
9/12/2013