Interpoler une forme (3D Analyst)
Récapitulatif
Interpole des valeurs Z pour une classe d'entités selon l'altitude dérivée d'un raster, d'un réseau triangulé irrégulier (TIN) ou d'un jeu de données de MNT.
Pour en savoir plus sur la fonction Interpoler les formes (3D Analyst)
Illustration
Utilisation
-
Lorsque vous utilisez l'option d'interpolation Voisins naturels, assurez-vous de spécifier une distance de référence raisonnable. Cette distance est généralement comprise entre 0,5 et 1 fois l'espacement moyen des points des données utilisées pour créer le jeu de données de TIN ou de MNT.
-
Lors vous utilisez l'option Interpoler les sommets uniquement, les entités en entrée dont les sommets se trouvent en dehors de la zone de données de la surface sont ignorées et ne produisent aucun résultat. Découpez les entités avant d'exécuter la fonction Interpoler les formes afin de garantir qu'elles se trouvent complètement sur la surface.
Le paramètre Facteur Z affecte uniquement les résultats pour les rasters et les TIN, et non pour les jeux de données de MNT. Pour appliquer un facteur Z aux entités issues d'un jeu de données de MNT, utilisez l'outil Ajuster Z 3D.
Syntaxe
Paramètre | Explication | Type de données |
in_surface |
The raster, TIN, or terrain surface used for interpolating z-values. | Raster Layer; Terrain Layer; TIN Layer |
in_feature_class |
The input feature class. | Feature Layer |
out_feature_class |
The output feature class. | Feature Class |
sample_distance (Facultatif) |
Espacement selon lequel les valeurs z sont interpolées. Par défaut, il s'agit de la taille de cellule d'un raster ou de la densification naturelle d'un 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 |
method (Facultatif) |
Méthode d'interpolation utilisée afin de déterminer des valeurs d'altitude pour les entités en sortie. Les options disponibles dépendent du type de surface utilisé. L'interpolation BILINEAR est disponible pour une surface raster, où un point de requête obtient son altitude à partir des valeurs trouvées dans les quatre cellules les plus proches. Les jeux de données de MNT et TIN fournissent les options suivantes :
| String |
vertices_only (Facultatif) |
Indique si l'interpolation survient seulement le long des sommets d'une entité en entrée, en ignorant ainsi l'option de distance de référence.
| Boolean |
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.InterpolateShape_3d("my_tin", "roads.shp", "roads_interp.shp")
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''********************************************************************* Name: InterpolateShape Example Description: This script demonstrates how to use InterpolateShape on all 2D features in a target workspace. *********************************************************************''' # Import system modules import arcpy from arcpy import env import exceptions, sys, traceback # Set local variables inWorkspace = arcpy.GetParameterAsText(0) surface = arcpy.GetParameterAsText(1) try: arcpy.CheckOutExtension("3D") # Set default workspace env.workspace = inWorkspace # Create list of feature classes in target workspace fcList = arcpy.ListFeatureClasses() if fcList: for fc in fcList: desc = arcpy.Describe(fc) # Find 2D features if not desc.hasZ: # Set Local Variables outFC = "{0}_3D.shp".format(desc.basename) method = "BILINEAR" # Execute InterpolateShape arcpy.ddd.InterpolateShape(surface, fc, outFC, 10, 1, method, True) else: print "{0} is not a 2D feature.".format(fc) else: print "No feature classes were found in {0}.".format(env.workspace) 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)