Ajouter des informations de surface (3D Analyst)
Récapitulatif
Interpole des propriétés d'altitude de surface pour les entités ponctuelles, multi-points et polylinéaires.
Utilisation
Les valeurs Z des classes d'entités 3D sont ignorées. Toutes les entités sont traitées en tant qu'entités bidimensionnelles.
-
Les options Propriété en sortie sont écrites sur la table attributaire de la classe d'entités en entrée et dépendent de la géométrie de l'entité. La liste suivante récapitule les options disponibles pour chaque type de géométrie pris en charge :
- Point - z
- Multipoint - Z min, Z max, Z moyen
- Polyligne - Z min, Z max, Z moyen, surface - longueur, inclinaison min., inclinaison max., inclinaison moyenne
-
Les valeurs de pente des entités linéaires sont calculées sous la forme de pourcentages ou de degrés pour chaque segment de ligne.
- La pente minimale provient du segment dont la valeur est la plus proche de 0, ou du degré horizontal.
- La pente maximale provient du segment présentant la plus grande valeur calculée.
- La pente moyenne provient de la moyenne de la pente de tous les segments de ligne après pondération de chaque segment par sa longueur 3D. Les segments les plus longs ont donc une plus grande influence sur la valeur obtenue que les segments les plus courts.
Syntaxe
Paramètre | Explication | Type de données |
in_feature_class |
Classe d'entités points, multi-points ou polylignes en entrée. | Feature Layer |
in_surface |
The raster, TIN, or terrain surface used for interpolating z-values. | Raster Layer; Terrain Layer; TIN Layer |
out_property | Propriétés d'altitude de surface ajoutées à la table attributaire de la classe d'entités en entrée. La liste suivante récapitule les mots-clés de propriété disponibles et les types de géométrie pris en charge :
| String |
method (Facultatif) |
Méthode d'interpolation utilisée pour définir les valeurs Z des entités en entrée. Les options disponibles sont les suivantes :
| String |
sample_distance (Facultatif) |
Espacement selon lequel les valeurs z sont interpolées. Par défaut, la taille de cellule raster est utilisée lorsque la surface en entrée est un raster, et la densification naturelle de la surface triangulée est utilisée lorsque l'entrée est un MNT ou un jeu de données TIN. | Double |
z_factor (Facultatif) |
The factor by which elevation values will be multiplied. This is typically used to convert Z linear units that match those of the XY linear units. The default is 1, which leaves elevation values unchanged. | Double |
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.AddSurfaceInformation_3d("points.shp", "my_tin", "Z", "LINEAR")
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''********************************************************************* Name: AddSurfaceInformation Example Description: This script demonstrates how to use AddSurfaceInformation on all 2D feature classes in a target workspace. *********************************************************************''' # Import system modules import arcpy from arcpy import env import exceptions, sys, traceback try: arcpy.CheckOutExtension("3D") # Set Local Variables env.workspace = 'c:/data' inSurface = 'fgdb.gdb/municipal/terrain' pyramid = 5 method = "BILINEAR" # Create list of feature classes fcList = arcpy.ListFeatureClasses() if fcList: for fc in fcList: desc = arcpy.Describe(fc) # Determine if the feature is 2D if not desc.hasZ: if desc.shapeType == "Polygon": # Desired properties separated by semi-colons Prop = "Z_MIN;Z_MAX" elif desc.shapeType == "Point": Prop = "Z" elif desc.shapeType == "Multipoint": Prop = "Z_MIN;Z_MAX;Z_MEAN" elif desc.shapeType == "Polyline": Prop = "LENGTH_3D" # Execute AddSurfaceInformation arcpy.ddd.AddSurfaceInformation(fc, inSurface, Prop, method, 15, 1, pyramid) print "Completed adding surface information." 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)