Ajouter des informations Z (3D Analyst)

Niveau de licence :De baseStandardAvancé

Récapitulatif

Ajoute des informations sur les propriétés d'altitude d'entités dans une classe d'entités prenant en charge les valeurs Z.

Chaque forme 3D est examinée et les propriétés sélectionnées sont ajoutées à la table attributaire de la classe d'entités en entrée. Les options en sortie varient selon la géométrie de l'entité.

Utilisation

Syntaxe

AddZInformation_3d (in_feature_class, out_property, {noise_filtering})
ParamètreExplicationType de données
in_feature_class

La classe d'entités en entrée.

Feature Layer
out_property
[out_property,...]

Propriétés z qui sont ajoutées à la table attributaire de la classe d'entités en entrée. Les options disponibles sont les suivantes :

  • ZPoint coté d'entité point unique.
  • POINT_COUNTNombre de points de chaque matrice multi-points.
  • Z_MINAltitude la plus basse dans chaque entité multi-points, polylinéaire, surfacique ou multipatch.
  • Z_MAXAltitude la plus élevée dans chaque entité multi-points, polylinéaire, surfacique ou multipatch.
  • Z_MEANAltitude moyenne dans chaque entité multi-points, polylinéaire, surfacique ou multipatch.
  • LENGTH_3DLongueur tridimensionnelle de chaque entité polylinéaire ou surfacique.
  • VERTEX_COUNTNombre total de sommets dans chaque entité polylinéaire ou surfacique.
  • MIN_SLOPEValeur de pente la plus basse, calculée pour chaque entité polylinéaire, surfacique ou multipatch.
  • MAX_SLOPEValeur de pente la plus élevée, calculée pour chaque entité polylinéaire, surfacique ou multipatch.
  • AVG_SLOPEValeur de pente moyenne, calculée pour chaque entité polylinéaire, surfacique ou multipatch.
  • VOLUMEVolume déterminé pour chaque entité multipatch fermée.
String
noise_filtering
(Facultatif)

Vous permet d'exclure des petites portions d'entités d'après des calculs statistiques. Cette option permet d'obtenir de bonnes évaluations de pente maximale, car les petites portions présentent souvent des pentes extrêmes, qui risquent de biaiser les résultats statistiques.

Les valeurs des options Surface ou Longueur permettent d'exclure ces portions d'entités. Ce paramètre ne s'applique pas aux entités points uniques et multi-points.

  • NO_FILTERAucun filtrage du bruit n'est appliqué. Il s'agit de l'option par défaut.
  • AREA <…>Un filtre de surface est appliqué aux portions d'entités des classes d'entités multipatch. Une valeur AREA de 0,001 indique que les sous-parties de multipatches dont la surface est inférieure à 0,001 sont ignorées.
  • LENGTH <…> Un filtre de longueur est appliqué aux portions d'entités d'une classe d'entités linéaire ou surfaciques. Une valeur LENGTH de 0,001 indique que les portions d'entités dont la longueur est inférieure à 0,001 sont ignorées.
String

Exemple de code

1er exemple d'utilisation de l'outil AddZInformation (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.AddZInformation_3d('lines_3D.shp', 'Z_MEAN; LENGTH_3D; AVG_SLOPE', 
                        'NO_FILTER')
2e exemple d'utilisation de l'outil AddZInformation (script autonome)

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

'''******************************************************************
Name: AddZInformation Example
Description: This script demonstrates AddZInformation on all 
             z-aware features in a target workspace.
******************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    arcpy.CheckOutExtension('3D')
    # Set environment settings
    env.workspace = 'C:/data'
    # Create list of feature classes
    fcList = arcpy.ListFeatureClasses()
    if fcList:
        for fc in fcList:
            desc = arcpy.Describe(fc)
            if desc.hasZ:
                # Set Local Variables
                noise = 'No_Filter'
                if desc.shapeType == 'Polygon':
                    Prop = ['Z_MIN', 'Z_MAX', 'VERTEX_COUNT']
                elif desc.shapeType == 'Point':
                    Prop = 'Z'
                elif desc.shapeType == 'Multipoint':
                    Prop = ['Z_MIN', 'Z_MAX', 'Z_MEAN']
                elif desc.shapeType == 'Polyline':
                    Prop = 'LENGTH_3D'
                print 'Completed adding Z information.'
                # Execute AddZInformation
                arcpy.AddZInformation_3d(inFC, Prop, noise)
    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