Emprise géométrique minimale (Gestion des données)

Synthèse

Crée une classe d’entités contenant des polygones qui représentent une emprise géométrique minimale qui délimite chaque entité en entrée ou un groupe d’entités en entrée.

Illustration

Illustration de l’outil Emprise géométrique minimale

Utilisation

  • Les entités surfaciques en sortie et leurs attributs varient selon le type de géométrie spécifié et les choix de regroupement.

  • Le paramètre Option de groupe (paramètre group_option dans Python) affecte les attributs et les polygones en sortie de la façon suivante :

    • Avec la valeur Aucun, aucune des entités en entrée ne sera groupée. Une entité surfacique en sortie sera créée pour chaque entité en entrée ; les polygones ainsi créés peuvent se superposer. Les attributs des entités en entrée seront conservés dans la classe d’entités ponctuelles en sortie. Un nouveau champ, ORIG_FID, sera ajouté à la classe d’entités en sortie et défini sur les ID d’entité en entrée.
    • Avec la valeur Tout, une entité surfacique en sortie sera créée pour toutes les entités en entrée. Les attributs des entités en entrée ne seront pas conservés dans la classe d'entités en sortie.
    • Avec la valeur Liste, chaque ensemble d’entités en entrée contenant les mêmes valeurs de champ dans le ou les champs de groupe spécifiés sera traité comme un groupe. Une entité surfacique en sortie sera créée pour chaque groupe ; les polygones ainsi créés peuvent se superposer. Les attributs des entités en entrée utilisés comme champ(s) de groupe seront conservés dans la classe d’entités en sortie.
  • Chaque type de géométrie peut être caractérisé par une ou plusieurs mesures uniques ; ces mesures peuvent en outre être ajoutées à la sortie sous forme de nouveaux champs comme décrit ci-dessous. Les valeurs de largeur, de longueur et de diamètre sont exprimées dans les unités de l’entité ; les angles d’orientation sont indiqués en degrés décimaux, dans le sens des aiguilles du montre en partant du nord. Le préfixe MBG_ indique le champ d’emprise géométrique minimale.

    • Pour Rectangle par surface et Rectangle par largeur, les nouveaux champs et mesures sont les suivants :
      • MBG_Width : longueur du plus petit côté du rectangle obtenu.
      • MBG_Length : longueur du plus long côté du rectangle obtenu.
      • MBG_Orientation : orientation du plus grand côté du rectangle obtenu.
    • Pour Enveloppe, les nouveaux champs et mesures sont les suivants :
      • MBG_Width : longueur du plus petit côté du rectangle obtenu.
      • MBG_Length : longueur du plus long côté du rectangle obtenu.
    • Pour Enveloppe convexe, les nouveaux champs et mesures sont les suivants :
      • MBG_Width : distance la plus courte entre deux sommets de l’enveloppe convexe. (Elle peut se trouver entre plusieurs paires de sommets, mais c’est la première trouvée qui est utilisée.)
      • MBG_Length : distance la plus longue entre deux sommets de l’enveloppe convexe ; ces sommets sont appelés paires antipodes ou points antipodes. (Elle peut se trouver entre plusieurs paires de sommets, mais c’est la première trouvée qui est utilisée.)
      • MBG_APodX1 : coordonnée x du premier point des paires antipodes.
      • MBG_APodY1 : coordonnée y du premier point des paires antipodes.
      • MBG_APodX2 : coordonnée x du second point des paires antipodes.
      • MBG_APodY2 : coordonnée y du second point des paires antipodes.
      • MBG_Orientation : orientation de la ligne imaginaire qui connecte les paires antipodes.
    • Pour Cercle, le nouveau champ et la nouvelle mesure sont les suivants :
      • MBG_Diameter : diamètre du cercle obtenu.
  • Dans certains cas spéciaux, des entités en entrée produisent des polygones en sortie non valides (surface nulle). Dans ces cas, une petite valeur dérivée de la tolérance XY de l’entité en entrée sera utilisée comme largeur, longueur ou diamètre afin de créer des polygones en sortie. Ces polygones servent de paramètres fictifs pour le suivi des entités. Si les polygones obtenus semblent invisibles dans ArcMap en utilisant la largeur du contour du polygone par défaut, optez pour un symbole linéaire de contour plus épais pour les afficher. Ces cas spéciaux sont par exemple :

    • Si une entité multi-points contient un seul point ou si un groupe d’entités de ce type sont coïncidentes, un polygone carré très petit sera créé autour du point pour les types de géométrie Rectangle par surface, Rectangle par largeur, Enveloppe convexe et Enveloppe, et un cercle très petit sera créé pour le type de géométrie Cercle. Les valeurs MBG_Width, MBG_Length, MBG_Orientation et MBG_Diameter seront définies sur zéro pour indiquer ces cas.
    • Si une entité en entrée ou un groupe d’entités en entrée est parfaitement aligné (une ligne horizontale ou verticale ou une entité multi-points de deux points, par exemple), un polygone rectangle d’une très petite largeur sera créé autour de l’entité. Cela s’applique aux types de géométrie Rectangle par surface, Rectangle par largeur, Enveloppe convexe et Enveloppe. La valeur MBG_Width obtenue sera définie sur zéro pour indiquer ces cas.

Paramètres

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

Entités en entrée qui peuvent être ponctuelles, multi-points, linéaires, surfaciques ou multipatch.

Feature Layer
Classe d’entités en sortie

Classe d'entités surfaciques en sortie.

Feature Class
Type de géométrie
(Facultatif)

Spécifie le type d’emprise géométrique minimale que les polygones en sortie représenteront.

  • Rectangle par surfaceRectangle de la plus petite surface délimitant une entité en entrée. Il s’agit de l’option par défaut.
  • Rectangle par largeurRectangle de la plus petite largeur délimitant une entité en entrée.
  • Enveloppe convexePlus petit polygone convexe délimitant une entité en entrée.
  • CerclePlus petit cercle délimitant l’enveloppe d’une entité en entrée.
  • EnveloppeEnveloppe d’une entité en entrée.
String
Option de groupe
(Facultatif)

Spécifie comment les entités en entrée seront groupées ; chaque groupe sera délimité par un polygone en sortie.

  • AucunLes 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.
  • TousToutes les entités en entrée seront traitées comme un groupe.
  • ListeLes 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 est spécifié comme 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)

Spécifie s’il faut ajouter les attributs géométriques dans la classe d’entités en sortie ou les omettre.

  • Désactivé : omet les attributs géométriques dans la classe d’entités en sortie. Il s’agit de l’option par défaut.
  • Activé : ajoute les attributs géométriques dans la classe d’entités en sortie.
Boolean

arcpy.management.MinimumBoundingGeometry(in_features, out_feature_class, {geometry_type}, {group_option}, {group_field}, {mbg_fields_option})
NomExplicationType de données
in_features

Entités en entrée qui peuvent être ponctuelles, multi-points, linéaires, surfaciques ou multipatch.

Feature Layer
out_feature_class

Classe d'entités surfaciques en sortie.

Feature Class
geometry_type
(Facultatif)

Spécifie le type d’emprise géométrique minimale que les polygones en sortie représenteront.

  • RECTANGLE_BY_AREARectangle de la plus petite surface délimitant une entité en entrée. Il s’agit de l’option par défaut.
  • RECTANGLE_BY_WIDTHRectangle de la plus petite largeur délimitant une entité en entrée.
  • CONVEX_HULLPlus petit polygone convexe délimitant une entité en entrée.
  • CIRCLEPlus petit cercle délimitant l’enveloppe d’une entité en entrée.
  • ENVELOPEEnveloppe d’une entité en entrée.
String
group_option
(Facultatif)

Spécifie comment les entités en entrée seront groupées ; chaque groupe sera délimité par un polygone 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)

Les ou les champs des entités en entrée qui seront utilisés pour grouper des entités, lorsque LIST est spécifié comme 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
mbg_fields_option
(Facultatif)

Spécifie s’il faut ajouter les attributs géométriques dans la classe d’entités en sortie ou les omettre.

  • NO_MBG_FIELDSOmet les attributs en entrée dans la classe d’entités en sortie. Il s’agit de l’option par défaut.
  • MBG_FIELDSAjoute les attributs géométriques dans la classe d’entités en sortie.
Boolean

Exemple de code

Exemple 1 d’utilisation de l’outil MinimumBoundingGeometry (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l’utilisation de la fonction MinimumBoundingGeometry en mode immédiat.

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.MinimumBoundingGeometry_management("parks.shp",
                                         "c:/output/output.gdb/parks_mbg",
                                         "RECTANGLE_BY_AREA", "NONE")
Exemple 2 d’utilisation de l’outil MinimumBoundingGeometry (script Python autonome)

Le script autonome suivant dessous est un exemple d’application simple de la fonction MinimumBoundingGeometry dans un environnement de scripts.

# Name: MinimumBoundingGeometry.py
# Description: Use MinimumBoundingGeometry function to find an area 
#              for each multipoint input feature.

# import system modules 
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Create variables for the input and output feature classes
inFeatures = "treeclusters.shp"
outFeatureClass = "forests.shp"

# Use MinimumBoundingGeometry function to get a convex hull area
#         for each cluster of trees which are multipoint features
arcpy.MinimumBoundingGeometry_management(inFeatures, outFeatureClass, 
                                         "CONVEX_HULL", "NONE")

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes