Volume de contour minimum (3D Analyst)

Synthèse

Crée des entités multipatch représentant le volume d'espace occupé par un jeu d'entités 3D.

Illustration

Volume de contour minimum

Utilisation

  • Les méthodes Sphere (Sphère) ou Envelope (Enveloppe) (geometry_type="SPHERE" ou geometry_type = "ENVELOPE" dans Python) offre une représentation rapide du volume d’espace occupé par un jeu d’entités 3D.

  • L’option Convex hull (Enveloppe convexe) (geometry_type="CONVEX_HULL" dans Python) offre un niveau de détails plus élevé que la méthode Sphere (Sphère) ou Envelope (Enveloppe) mais ne permet pas de capturer les dépressions locales dans les entités en entrée.

  • L’option Concave hull (Enveloppe concave) (geometry_type="CONCAVE_HULL" dans Python) fournit un niveau de détails plus élevé en ce qui concerne la forme du volume de contour mais sollicite de nombreuses ressources de calcul et ne doit pas être utilisée pour des ensembles importants de données en entrée.

  • Lorsque le volume de contour minimum obtenu représente des groupes d’entités en entrée, les champs utilisés pour séparer l’entrée seront ajoutés au multipatch final. Si les caractéristiques géométriques sont incluses dans le volume de contour minimum, les champs suivants seront ajoutés aux entités en sortie :

    • MBV_Area : superficie totale du volume de contour minimum
    • MBV_Volume : volume total de l’espace que contient l’entité multipatch

Paramètres

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

Jeu de données LAS ou entités 3D dont le volume de contour minimum sera évalué.

LAS Dataset Layer; Feature Layer
Valeur Z

Source des valeurs z pour les données en entrée.

Field
Classe d’entités en sortie

Classe d’entités qui va être produite.

Feature Class
Type de classe d'entités en sortie
(Facultatif)

Spécifié la méthode utilisée pour déterminer la géométrie du volume de contour minimum.

  • CONVEX_HULLRégion convexe la plus petite entourant les données en entrée.
  • SPHEREPlus petite sphère délimitant les données en entrée.
  • ENVELOPEÉtendue XYZ des données en entrée.
  • CONCAVE_HULLEnveloppe concave qui délimite les données en entrée.
String
Options de groupe
(Facultatif)

Spécifie le mode de regroupement des entités en entrée ; chaque groupe sera délimité par un multipatch en sortie.

  • NONELes entités en entrée ne seront pas groupées. Il s’agit de l'option par défaut. Cette option n'est pas disponible pour le point en entrée.
  • ALLToutes les entités en entrée seront traitées comme un groupe.
  • LISTLes entités en entrée seront groupées en fonction de leurs valeurs communes dans le champ spécifié ou des champs du paramètre champ de groupe.
String
Grouper les champs
(Facultatif)

Champ(s) dans les entités en entrée qui sera/seront utilisé(s) pour grouper des entités lorsque Liste (Liste) est spécifié en tant que Group Option (Option de groupe). Au moins un champ de groupe est obligatoire pour l'option Liste. Toutes les entités qui ont la même valeur dans le ou les champs spécifiés seront traités comme un groupe.

Field
Ajouter les caractéristiques géométriques sous forme d'attributs à la sortie
(Facultatif)

Indique si chaque entité se voit attribuer le volume et la surface du volume de contour minimum.

  • Désactivé : aucun attribut géométrique n’est ajouté à l’entité en sortie. Il s’agit de l’option par défaut.
  • Activé : les attributs géométriques sont ajoutés à l’entité en sortie.
Boolean

arcpy.ddd.MinimumBoundingVolume(in_features, z_value, out_feature_class, {geometry_type}, {group}, {group_field}, {mbv_fields})
NomExplicationType de données
in_features

Jeu de données LAS ou entités 3D dont le volume de contour minimum sera évalué.

LAS Dataset Layer; Feature Layer
z_value

Source des valeurs z pour les données en entrée.

Field
out_feature_class

Classe d’entités qui va être produite.

Feature Class
geometry_type
(Facultatif)

Spécifié la méthode utilisée pour déterminer la géométrie du volume de contour minimum.

  • CONVEX_HULLRégion convexe la plus petite entourant les données en entrée.
  • SPHEREPlus petite sphère délimitant les données en entrée.
  • ENVELOPEÉtendue XYZ des données en entrée.
  • CONCAVE_HULLEnveloppe concave qui délimite les données en entrée.
String
group
(Facultatif)

Spécifie le mode de regroupement des entités en entrée ; chaque groupe sera délimité par un multipatch en sortie.

  • NONELes entités en entrée ne seront pas groupées. Il s’agit de l'option par défaut. Cette option n'est pas disponible pour le point en entrée.
  • ALLToutes les entités en entrée seront traitées comme un groupe.
  • LISTLes entités en entrée seront groupées en fonction de leurs valeurs communes dans le champ spécifié ou des champs du paramètre champ de groupe.
String
group_field
[group_field,...]
(Facultatif)

Champ(s) dans les entités en entrée qui sera/seront utilisé(s) pour grouper des entités lorsque LIST est spécifié en tant que group_option. Au moins un champ de groupe est obligatoire pour l'option LIST. Toutes les entités qui ont la même valeur dans le ou les champs spécifiés seront traités comme un groupe.

Field
mbv_fields
(Facultatif)

Indique si les attributs géométriques sont ajoutés à la classe d’entités multipatch en sortie.

  • NO_MBV_FIELDSAucun attribut géométrique n’est ajouté à l’entité en sortie. Il s’agit de l’option par défaut.
  • MBV_FIELDSLes attributs géométriques sont ajoutés à l’entité en sortie.
Boolean

Exemple de code

Exemple 1 d'utilisation de l'outil MinimumBoundingVolume (fenêtre Python)

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

arcpy.env.workspace = 'C:/data'
arcpy.ddd.MinimumBoundingVolume('tree_canopy.shp', 'Shape.Z', 
                                'canopy_volume.shp', 'CONCAVE_HULL',
                                group='List', group_field='Season'
                                mbv_fields='MBV_FIELDS')
Exemple 2 d'utilisation de l'outil MinimumBoundingVolume (script autonome)

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

'''****************************************************************************
Name: Detect Periods of Activity
Description: 
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math

in_features = arcpy.GetParameterAsText(0)
out_volume = arcpy.GetParameterAsText(1)
grouping_field = arcpy.GetParameterAsText(2)


try:
    arcpy.MinimumBoundingVolume_3d(in_features, 'Shape.Z', out_volume, 
                                   'CONCAVE_HULL','LIST', group_field)

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

Rubriques connexes