Ajouter des informations de surface (3D Analyst)

Synthèse

Attribuer aux entités des statistiques tirées d’une surface.

Utilisation

  • Les valeurs z des entités 3D sont ignorées. Chaque entité récapitule les propriétés z de surface qui intersectent sa géométrie. Les points tirent les valeurs z de la localisation x,y sur la surface, les lignes acquièrent les propriétés z en interpolant des mesures de surface sur leur longueur et les polygones récapitulent les propriétés z de surface au sein de leur surface.

  • Les options du paramètre Propriété en sortie sont écrites dans la table attributaire de l’entité en entrée. Chaque entité définit la localisation des propriétés de surface évaluées et le type de propriété pouvant être renvoyé varie en fonction de la géométrie de l’entité :

    Géométrie d’entitéPropriétés de surface

    Point

    Points cotés interpolés à partir des coordonnées x,y du point sur la surface

    Multi-point

    Valeurs minimale, maximale et moyenne du point coté pour tous les points d’un enregistrement multi-point

    Polyligne

    Distance 3D de la ligne sur la surface

    Valeurs minimale, maximale et moyenne de l’élévation et de la pente de la ligne sur la surface

    Polygone

    Superficie 3D de la surface superposée au polygone

    Valeurs minimale, maximale et moyenne de l’élévation et de la pente de la surface

  • Les valeurs de pente sont mesurées sous la forme de pourcentages (grade) et, pour les entités linéaires, elles sont calculées à chaque segment de la ligne.

    • La pente minimale provient du segment dont la valeur est la plus proche de 0, ou du grade horizontal.
    • La pente maximale provient du segment présentant la plus grande valeur calculée.
    • La pente moyenne d’une polyligne est obtenue à partir de la moyenne pondérée de la pente de chaque segment linéaire. La pondération est basée sur la longueur 3D de chaque segment. Les segments les plus longs ont donc une plus grande influence sur le calcul obtenu que les segments les plus courts.
  • Tous les attributs sont calculés en fonction d’une surface TIN utilisée pour interpoler des informations Z pour les entités en entrée. Les surfaces non TIN sont converties en un jeu de données TIN intermédiaire. Les entités sont découpées selon la limite de cette surface TIN et seule la zone commune aux entités et à la surface est évaluée. La construction de ce TIN peut prendre beaucoup plus de temps si l’entrée est un jeu de données LAS dense ou un raster haute résolution. Si un TIN de plus faible résolution est acceptable pour l’analyse, utilisez l’outil Raster vers TIN ou Jeu de données LAS vers TIN pour générer une surface TIN affinée pouvant être utilisée avec cet outil.

  • Pour calculer la valeur z moyenne d’un polygone, découpez le TIN avec le polygone et effectuez le calcul sur le TIN obtenu. La valeur z du point médian de chaque triangle de ce TIN est multipliée par la surface 3D du triangle. Ce produit est ajouté à tous les triangles ; le résultat est ensuite divisé par la surface 3D cumulée de ces triangles pour donner le résultat final. Lorsqu’une entité surfacique volumineuse est spécifiée avec une surface raster qui contient un nombre élevé de cellules superposées, le traitement est susceptible d’échouer en raison d’un nombre insuffisant de ressources mémoire nécessaires à la création de la surface TIN intermédiaire. Si cela se produit, vous devez créer un TIN de plus faible résolution ou utiliser une approche basée sur un raster pour obtenir les propriétés en sortie souhaitées. Plusieurs outils sont disponibles dans le jeu d’outils Statistiques zonales qui permet de déduire plus rapidement des propriétés telles que les valeurs de surface, minimale, maximale et moyenne. Les outils Tabuler les superficies et Statistiques zonales (table) fournissent une table en sortie qui peut être jointe à l’entité surfacique. Pour obtenir les propriétés de pente, vous pouvez créer un raster de pente et exécuter l’un de ces outils. Si vous ne possédez pas l’extension Spatial Analyst mais que vous souhaitez calculer l’aire et le volume de la surface, vous pouvez découper le raster en entrée avec le polygone et utiliser l’outil Surface - Volume qui génère en sortie l’aire et le volume de la surface.

  • Lors du traitement des entités linéaires, les lignes sont drapées sur la surface TIN et un sommet est inséré à chaque croisement entre la ligne et une arête TIN. Les lignes avec des segments courbes sont densifiées en segments droits plus courts avant le traitement. Pour calculer la valeur z moyenne d’une ligne donnée, le point médian du segment est multiplié par la longueur 3D de ce segment, puis le produit de tous les segments est ajouté et le résultat est divisé par la longueur 3D cumulée des segments de ligne.

  • Utilisez le paramètre Filtrage du bruit pour exclure du calcul de la pente les portions de la surface caractérisées par des mesures anormales. Les entités linéaires sont segmentées par des sommets qui capturent le profil de la surface, et le fait de filtrer ces segments par longueur permet de supprimer l’influence des segments courts probablement générés par des mesures de surface indésirables. De même, le filtre de surface pour les entités surfaciques permet de ne pas prendre en compte les microtriangles des surfaces triangulées dans le calcul de la pente. Pour les surfaces raster, un sous-ensemble de centroïdes de cellules permet de créer une surface triangulée à laquelle le filtre de surface est appliqué. Les polygones sont convertis en interne en multipatchs (ensembles de triangles). Chaque triangle, lorsqu’il est drapé sur la surface, est généralement fractionné en plusieurs triangles plus petits de telle sorte que la totalité du polygone corresponde à l’ensemble de la surface. La valeur z au point médian de chaque triangle est multipliée par la surface 3D de ce triangle. Ces produits sont additionnés, puis cette somme est divisée par la surface 3D cumulée des triangles, ce qui génère la moyenne pondérée des valeurs z aux points médians des triangles.

Paramètres

ÉtiquetteExplicationType de données
Entités en entrée

Entités ponctuelles, multi-points, polylignes ou surfaciques qui définissent les localisations permettant de déterminer une ou plusieurs propriétés de surface.

Feature Layer
Surface en entrée

Surface de jeu de données LAS, de mosaïque, raster, TIN ou de MNT utilisée pour interpoler les valeurs z.

LAS Dataset Layer; Mosaic Layer; Raster Layer; Terrain Layer; TIN Layer
Propriété en sortie

Spécifie les propriétés d’élévation de surface ajoutées à la table attributaire de la classe d’entités en entrée.

  • ZLes valeurs z de surface interpolées pour la localisation x,y de chaque entité ponctuelle unique sont ajoutées.
  • Z minimumLes valeurs z de surface les plus faibles dans la zone définie par le polygone, sur la longueur d’une ligne, ou parmi les valeurs interpolées des points dans un enregistrement multi-point sont ajoutées.
  • Z maximumL’élévation de surface la plus importante dans la zone définie par le polygone, sur la longueur d’une ligne, ou parmi les valeurs interpolées des points dans un enregistrement multi-point est ajoutée.
  • Z moyenL’élévation de surface moyenne de la zone définie par le polygone, sur la longueur d’une ligne, ou parmi les valeurs interpolées des points dans un enregistrement multi-point est ajoutée.
  • Surface - SuperficieLa superficie 3D de la région définie par chaque polygone est ajoutée.
  • Surface - LongueurLa distance 3D de la ligne sur la surface est ajoutée.
  • Pente minimaleLa valeur de pente la plus proche de zéro sur la ligne ou à l’intérieur de la zone définie par le polygone est ajoutée.
  • Pente maximaleLa valeur de pente la plus élevée sur la ligne ou à l’intérieur de la zone définie par le polygone est ajoutée.
  • Pente moyenneLa valeur de pente moyenne sur la ligne ou à l’intérieur de la zone définie par le polygone est ajoutée.
String
Méthode
(Facultatif)

Spécifie la méthode d’interpolation utilisée pour déterminer les informations sur la surface.

  • BilinéaireUne méthode d’interpolation spécifique à la surface raster, qui détermine les valeurs de cellule des quatre cellules les plus proches, est utilisée. Il s’agit de la seule option disponible pour une surface raster.
  • LinéaireL’élévation est obtenue à partir du plan défini par le triangle qui contient la localisation x,y d’un point de requête. Il s’agit de la méthode d’interpolation par défaut pour les TIN, les MNT et les jeux de données LAS.
  • Voisins naturelsL’élévation est obtenue par l’application de pondérations basées sur la surface aux voisins naturels d’un point de requête.
  • Fusion de la valeur Z minimaleL’élévation est obtenue à partir de la plus petite valeur z détectée parmi les voisins naturels d’un point de requête.
  • Fusion de la valeur Z maximaleL’élévation est obtenue à partir de la plus grande valeur z détectée parmi les voisins naturels d’un point de requête.
  • Fusion de la valeur Z la plus procheL’élévation est obtenue à partir de la valeur la plus proche parmi les voisins naturels d’un point de requête.
  • Fusion de la valeur Z la plus proche de la moyenneL’élévation est obtenue à partir de la valeur z la plus proche de la moyenne de tous les voisins naturels d’un point de requête.
String
Distance d’échantillonnage
(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
Facteur Z
(Facultatif)

Facteur par lequel les valeurs z sont multipliées. Cette option permet généralement de convertir les unités linéaires z afin d’apparier les unités linéaires x,y. La valeur par défaut est 1, qui laisse les valeurs d'altitude inchangées. Ce paramètre n’est pas disponible si la référence spatiale de la surface en entrée possède un datum z dont l’unité linéaire est spécifiée.

Double
Résolution des niveaux de pyramide
(Facultatif)

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

Double
Filtrage du bruit
(Facultatif)

Exclut les portions de la surface qui sont potentiellement caractérisées par des mesures anormales du calcul de la pente. Les autres propriétés ne sont pas affectées par ce paramètre.

Les entités linéaires offrent un filtre de longueur, dans lequel les segments linéaires dont la longueur 3D est inférieure à la valeur spécifiée sont exclus du calcul de la pente. Les entités surfaciques offrent un filtre de surface dans lequel les polygones couvrant une superficie inférieure à la valeur spécifiée sont exclus.

String

Sortie obtenue

ÉtiquetteExplicationType de données
Entités en entrée mises à jour

Entités en entrée mises à jour.

Feature Layer

arcpy.ddd.AddSurfaceInformation(in_feature_class, in_surface, out_property, {method}, {sample_distance}, {z_factor}, {pyramid_level_resolution}, {noise_filtering})
NomExplicationType de données
in_feature_class

Entités ponctuelles, multi-points, polylignes ou surfaciques qui définissent les localisations permettant de déterminer une ou plusieurs propriétés de surface.

Feature Layer
in_surface

Surface de jeu de données LAS, de mosaïque, raster, TIN ou de MNT utilisée pour interpoler les valeurs z.

LAS Dataset Layer; Mosaic Layer; Raster Layer; Terrain Layer; TIN Layer
out_property
[out_property,...]

Spécifie les propriétés d’élévation de surface ajoutées à la table attributaire de la classe d’entités en entrée.

  • ZLes valeurs z de surface interpolées pour la localisation x,y de chaque entité ponctuelle unique sont ajoutées.
  • Z_MINLes valeurs z de surface les plus faibles dans la zone définie par le polygone, sur la longueur d’une ligne, ou parmi les valeurs interpolées des points dans un enregistrement multi-point sont ajoutées.
  • Z_MAXL’élévation de surface la plus importante dans la zone définie par le polygone, sur la longueur d’une ligne, ou parmi les valeurs interpolées des points dans un enregistrement multi-point est ajoutée.
  • Z_MEANL’élévation de surface moyenne de la zone définie par le polygone, sur la longueur d’une ligne, ou parmi les valeurs interpolées des points dans un enregistrement multi-point est ajoutée.
  • SURFACE_AREALa superficie 3D de la région définie par chaque polygone est ajoutée.
  • SURFACE_LENGTHLa distance 3D de la ligne sur la surface est ajoutée.
  • MIN_SLOPELa valeur de pente la plus proche de zéro sur la ligne ou à l’intérieur de la zone définie par le polygone est ajoutée.
  • MAX_SLOPELa valeur de pente la plus élevée sur la ligne ou à l’intérieur de la zone définie par le polygone est ajoutée.
  • AVG_SLOPELa valeur de pente moyenne sur la ligne ou à l’intérieur de la zone définie par le polygone est ajoutée.
String
method
(Facultatif)

Spécifie la méthode d’interpolation utilisée pour déterminer les informations sur la surface.

  • BILINEARUne méthode d’interpolation spécifique à la surface raster, qui détermine les valeurs de cellule des quatre cellules les plus proches, est utilisée. Il s’agit de la seule option disponible pour une surface raster.
  • LINEARL’élévation est obtenue à partir du plan défini par le triangle qui contient la localisation x,y d’un point de requête. Il s’agit de la méthode d’interpolation par défaut pour les TIN, les MNT et les jeux de données LAS.
  • NATURAL_NEIGHBORSL’élévation est obtenue par l’application de pondérations basées sur la surface aux voisins naturels d’un point de requête.
  • CONFLATE_ZMINL’élévation est obtenue à partir de la plus petite valeur z détectée parmi les voisins naturels d’un point de requête.
  • CONFLATE_ZMAXL’élévation est obtenue à partir de la plus grande valeur z détectée parmi les voisins naturels d’un point de requête.
  • CONFLATE_NEARESTL’élévation est obtenue à partir de la valeur la plus proche parmi les voisins naturels d’un point de requête.
  • CONFLATE_CLOSEST_TO_MEANL’élévation est obtenue à partir de la valeur z la plus proche de la moyenne de tous les voisins naturels d’un point de requête.
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)

Facteur par lequel les valeurs z sont multipliées. Cette option permet généralement de convertir les unités linéaires z afin d’apparier les unités linéaires x,y. La valeur par défaut est 1, qui laisse les valeurs d'altitude inchangées. Ce paramètre n’est pas disponible si la référence spatiale de la surface en entrée possède un datum z dont l’unité linéaire est spécifiée.

Double
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. La valeur par défaut est 0 (ou résolution maximale).

Double
noise_filtering
(Facultatif)

Exclut les portions de la surface qui sont potentiellement caractérisées par des mesures anormales du calcul de la pente. Les autres propriétés ne sont pas affectées par ce paramètre.

Les entités linéaires offrent un filtre de longueur, dans lequel les segments linéaires dont la longueur 3D est inférieure à la valeur spécifiée sont exclus du calcul de la pente. Les entités surfaciques offrent un filtre de surface dans lequel les polygones couvrant une superficie inférieure à la valeur spécifiée sont exclus.

String

Sortie obtenue

NomExplicationType de données
output_feature_class

Entités en entrée mises à jour.

Feature Layer

Exemple de code

Exemple 1 d’utilisation de la fonction AddSurfaceInformation (fenêtre Python)

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

arcpy.env.workspace = "C:/data"
arcpy.ddd.AddSurfaceInformation("points.shp", "my_tin", "Z", "LINEAR")
Exemple 2 d’utilisation de la fonction AddSurfaceInformation (script autonome)

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

'''*********************************************************************
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

# Set Local Variables
arcpy.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.")

Informations de licence

  • Basic: Nécessite 3D Analyst
  • Standard: Nécessite 3D Analyst
  • Advanced: Nécessite 3D Analyst

Rubriques connexes