Agréger (Analyse)
Récapitulatif
Calcule une union géométrique des entités en entrée. Toutes les entités et les attributs correspondants sont inscrits dans la classe d'entités en sortie.
Pour en savoir plus sur l'utilisation de la fonction Agréger
Illustration
Utilisation
-
Toutes les classes d'entités et les couches d'entités en entrée doivent avoir une géométrie surfacique.
-
Le paramètre Autoriser les discontinuités peut être utilisé avec les valeurs ALL ou ONLY_FID du paramètre Attributs de jointure. Cela permet l'identification des surfaces résultantes entièrement entourées par les polygones résultants. Les attributs FID pour ces entités GAP ont tous la valeur -1.
La classe d'entités en sortie contient un attribut FID_<name> pour chacune des classes d'entités en entrée. Par exemple, si une des classes d'entités en entrée se nomme Soils, la classe d'entités en sortie contient un attribut FID_Soils. Les valeurs FID_<name> sont de -1 pour toute entité en entrée (ou toute partie d'une entité en entrée) qui ne croise pas une autre entité en entrée. Les valeurs attributaires des autres classes d'entités de l'union, lorsque aucune intersection n'est détectée, ne sont pas transférées vers l'entité en sortie dans ce cas.
-
Les valeurs attributaires des classes d'entités en entrée sont copiées vers la classe d'entités en sortie. Toutefois, si l'entrée représente une ou plusieurs couche(s) créée(s) par l'outil Générer une couche et que l'option Règle de division est activée pour un champ, alors un quotient de la valeur attributaire en entrée est calculé pour la valeur attributaire en sortie. Lorsque l'option Règle de division est activée, chaque fois qu'une entité est fractionnée dans une opération de superposition, les attributs des entités résultantes sont égaux à un quotient de la valeur attributaire de l'entité en entrée. La valeur en sortie dépend du quotient de division de la géométrie d'entité en entrée. Par exemple, si la géométrie en entrée a été divisée en parties égales, la moitié de la valeur attributaire de l'entité en entrée est affectée à la valeur attributaire de chaque nouvelle entité. L'option Règle de division s'applique uniquement aux champs de type numérique.
Attention :Les outils de géotraitement ne respectent pas les règles de fractionnement de champ des classes d'entités ou des tables de géodatabase.
-
Cet outil utilise un processus de tuilage pour la gestion des jeux de données très volumineux afin d'améliorer les performances et l'évolutivité. Pour plus de détails, reportez-vous à la rubrique Géotraitement sur jeux de données volumineux.
-
Cet outil peut générer des entités multi-parties dans la sortie même si toutes les entrées étaient des entités en une partie. Le cas échéant, pour éliminer les entités multi-parties, utilisez l'outil Multi-parties vers une partie sur la classe d'entités en sortie.
Avec des licences ArcGIS for Desktop Basic et Standard, le nombre de classes ou de couches d'entités en entrée est limité à deux.
Syntaxe
Paramètre | Explication | Type de données |
in_features [[in_features, {Rank}],...] |
La liste des classes ou couches d'entités en entrée. Lorsque la distance entre les entités est inférieure à la tolérance d'agrégat, les entités de classement inférieur s'alignent sur l'entité de classement le plus élevé. Le classement le plus élevé est 1. Toutes les entités en entrée doivent être des polygones. | Value Table |
out_feature_class |
Classe d'entités devant contenir les résultats. | Feature Class |
join_attributes (Facultatif) |
Identifie les attributs des entités en entrée qui sont transférés vers la classe d'entités en sortie.
| String |
cluster_tolerance (Facultatif) |
La distance minimum séparant toutes les coordonnées d'entité (nœuds et sommets) ainsi que la distance de déplacement possible d'une coordonnée sur X ou Y (ou les deux). | Linear unit |
gaps (Facultatif) |
Les interruptions sont des surfaces de la classe d'entités en sortie entièrement entourées par d'autres polygones. Cela ne constitue pas une opération non valide, mais il est préférable de les identifier à des fins d'analyse. Pour rechercher les interruptions dans la sortie, définissez l'option sur la valeur NO_GAPS afin de créer une entité dans ces surfaces. Pour sélectionner ces entités, effectuez une requête sur la classe d'entités en sortie portant sur les valeurs FID de toutes les entités en entrée égales à -1.
| Boolean |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction Agréger en mode immédiat.
import arcpy
from arcpy import env
env.workspace = "C:/data/data/gdb"
arcpy.Union_analysis (["well_buff50", "stream_buff200", "waterbody_buff500"], "water_buffers", "NO_FID", 0.0003)
arcpy.Union_analysis ([["counties", 2],["parcels", 1],["state", 2]], "state_landinfo")
Le script autonome ci-dessous illustre deux applications possibles de la fonction Agréger dans l'écriture de scripts.
# unions.py
# Purpose: union 3 feature classes
# Import the system modules
import arcpy
from arcpy import env
# Set the current workspace
# (to avoid having to specify the full path to the feature classes each time)
env.workspace = "c:/data/data.gdb"
# Union 3 feature classes but only carry the FID attributes to the output
inFeatures = ["well_buff50", "stream_buff200", "waterbody_buff500"]
outFeatures = "water_buffers"
clusterTol = 0.0003
arcpy.Union_analysis (inFeatures, outFeatures, "ONLY_FID", clusterTol)
# Union 3 other feature classes, but specify some ranks for each
# since parcels has better spatial accuracy
inFeatures = [["counties", 2],["parcels", 1],["state", 2]]
outFeatures = "state_landinfo"
arcpy.Union_analysis (inFeatures, outFeatures)