Interpoler les formes (3D Analyst)

Disponible avec une licence 3D Analyst.

Disponible avec une licence Spatial Analyst.

Résumé

Crée des entités 3D en interpolant les valeurs Z d'une surface.

Pour en savoir plus sur l’outil Interpoler les formes

Illustration

Illustration de l'outil Interpoler les formes

Utilisation

  • Lorsque vous utilisez une interpolation par voisins naturels, spécifiez une distance d'échantillonnage égale ou supérieure à la moitié de l'espacement moyen des points des données à la surface.

  • Lors vous utilisez l'option Interpolate Vertices Only (Interpoler les sommets uniquement), les entités dont les sommets se trouvent en dehors de la zone de données de la surface ne feront pas partie de la sortie, sauf en cas de surface raster en entrée et d’utilisation de la méthode d’interpolation du voisin le plus proche.

Syntaxe

arcpy.3d.InterpolateShape(in_surface, in_feature_class, out_feature_class, {sample_distance}, {z_factor}, {method}, {vertices_only}, {pyramid_level_resolution}, {preserve_features})
ParamètreExplicationType de données
in_surface

Surface à utiliser pour interpoler les valeurs z.

LAS Dataset Layer; Mosaic Layer; Raster Layer; Terrain Layer; TIN Layer
in_feature_class

Entités en entrée à traiter.

Feature Layer
out_feature_class

Classe d'entités qui va être produite par cet outil.

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 jeu de données raster ou de la densification naturelle d'une surface triangulée.

Double
z_factor
(Facultatif)

Facteur par lequel les valeurs z sont multipliées. Il permet généralement de convertir des unités linéaires Z afin d'apparier les unités linéaires XY. La valeur par défaut est de 1, ce qui laisse les valeurs d’altitude inchangées. Ce paramètre est désactivé si la référence spatiale de la surface en entrée possède un datum Z avec une unité linéaire spécifiée.

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é.

  • BILINEARDétermine la valeur du point de requête par interpolation bilinéaire. Il s'agit de la méthode par défaut pour toute surface raster en entrée.
  • NEARESTDétermine la valeur du point de requête par interpolation du voisin le plus proche. Si cette méthode est utilisée, les valeurs de surface sont uniquement interpolées pour déterminer les sommets de l’entité en entrée. Cette option est disponible uniquement pour une surface raster.
  • LINEAR Méthode d'interpolation par défaut pour un jeu de données TIN, de MNT et LAS. L’altitude est obtenue à partir du plan défini par le triangle qui contient l'emplacement XY d'un point de requête.
  • NATURAL_NEIGHBORS Obtient une altitude en appliquant des pondérations basées sur la surface aux voisins naturels d'un point de requête.
  • CONFLATE_ZMIN Obtient l'altitude à partir de la plus petite valeur z détectée parmi les voisins naturels d'un point de requête.
  • CONFLATE_ZMAX Obtient l'altitude à partir de la plus grande valeur z détectée parmi les voisins naturels d'un point de requête.
  • CONFLATE_NEAREST Obtient l'altitude de la valeur la plus proche recherchée parmi les voisins naturels d'un point de requête.
  • CONFLATE_CLOSEST_TO_MEAN Obtient l'altitude à partir de la valeur z la plus proche de la moyenne de tous les voisins naturels d'un point de requête.
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.

  • DENSIFYEffectue une interpolation à l'aide de la distance de référence. Il s’agit de l’option par défaut.
  • VERTICES_ONLYEffectue une interpolation le long des sommets.
Boolean
pyramid_level_resolution
(Facultatif)

Résolution de taille de fenêtre ou de tolérance z du niveau de pyramide de MNT qui sera utilisée par cet outil. La valeur par défaut est 0 (ou résolution maximale).

Double
preserve_features
(Facultatif)

Indique si les entités dont un ou plusieurs sommets se trouvent en dehors de la zone de données du raster seront conservées dans la sortie. Ce paramètre est disponible uniquement en cas de surface raster en entrée et d’utilisation de la méthode d’interpolation du voisin le plus proche.

  • PRESERVELa valeur z de chaque sommet se trouvant en dehors de la surface raster est dérivée de la tendance des valeurs z calculée pour les sommets inclus dans la surface raster.
  • EXCLUDELes entités dont au moins un sommet se trouve en dehors de la surface raster sont ignorées dans la sortie. Il s’agit de l’option par défaut.
Boolean

Exemple de code

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

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

arcpy.env.workspace = "C:/data"
arcpy.InterpolateShape_3d("my_tin", "roads.shp", "roads_interp.shp")
2e exemple d'utilisation de l'outil InterpolateShape (script autonome)

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

'''*********************************************************************
Name: InterpolateShape Example
Description: This script demonstrates how to use InterpolateShape
             on all 2D features in a target workspace.
*********************************************************************'''
# Import system modules
import arcpy

# Set local variables
inWorkspace = arcpy.GetParameterAsText(0)
surface = arcpy.GetParameterAsText(1)

try:
    # Set default workspace
    arcpy.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))
    
except arcpy.ExecuteError:
    print(arcpy.GetMessages())
    
except Exception as err:
    print(err)

Informations de licence

  • Basic: Requiert 3D Analyst
  • Standard: Requiert 3D Analyst
  • Advanced: Requiert 3D Analyst

Rubriques connexes