Résumé
Calcule une intersection géométrique des entités en entrée. Les entités ou les portions des entités superposées dans toutes les couches ou classes d’entités sont enregistrées dans la classe d’entités en sortie.
Un outil alternatif est disponible pour les opérations d’intersection. Reportez-vous à la documentation de l’outil Pairwise Intersect (Intersection deux par deux) pour plus de détails.
L’outil Pairwise Intersect (Intersection deux par deux) est similaire à l’outil Intersect (Intersection) dans le sens où les intersections géométriques sont calculées, mais il est différent dans le sens où les intersections sont calculées sur des paires d’entités et non sur toutes les combinaisons d’entités.
Pour en savoir plus sur le fonctionnement de l'outil Intersecter
Illustration
Utilisation
La valeur du paramètre Input Features (Entités en entrée) doit être des entités simples, de type point, multi-points, ligne ou polygone. Elles ne peuvent pas correspondre à des entités complexes telles que les entités annotation, les entités cotation ou les entités de réseau.
Si les entrées présentent des types de géométrie différents (autrement dit, ligne sur polygone, point sur ligne, etc.), le type de géométrie Output Feature Class (Classe d’entités en sortie) correspond par défaut au type de géométrie Input Features (Entités en entrée) ayant la géométrie de dimension la plus petite. Par exemple, si une ou plusieurs entrées sont de type point, la sortie par défaut est de type point, si une ou plusieurs entrées sont de type ligne, la sortie par défaut est de type ligne et si toutes les entrées sont de type polygone, la sortie par défaut est de type polygone.
La valeur du paramètre Output Type (Type en sortie) peut être celle du paramètre Input Features (Entités en entrée) ayant la géométrie de dimension la plus faible, ou inférieure. Par exemple, si toutes les entrées sont des polygones, la sortie peut être de type polygone, ligne ou point. Si l'une des entrées est de type ligne et qu'aucune n'est de type point, les données en sortie peuvent être de type ligne ou point. Si au moins une des entrées est de type point, la valeur Output Type (Type en sortie) peut uniquement être point.
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 respecte l'environnement Facteur de traitement parallèle. Si l'environnement n'est pas défini (comportement par défaut) ou s'il est défini sur 0, le traitement parallèle est désactivé. Si vous définissez l'environnement sur 100, le traitement parallèle est désactivé.
Le traitement parallèle est actuellement pris en charge pour les opérations de superposition de polygones, de superposition de ligne sur polygone et de point sur polygone.
Licence :
Avec des licences ArcGIS Desktop Basic et Desktop Standard, le nombre de classes ou de couches d'entités en entrée est limité à deux.
Syntaxe
arcpy.analysis.Intersect(in_features, out_feature_class, {join_attributes}, {cluster_tolerance}, {output_type})
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. Pour plus d'informations, reportez-vous à la rubrique Classements par priorité et outils de géotraitement. | Value Table |
out_feature_class | Classe d'entités en sortie. | Feature Class |
join_attributes (Facultatif) | Spécifie 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) | 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 l'axe X ou Y (ou les deux). Attention :Modifier la valeur de ce paramètre peut provoquer des erreurs ou des résultats inattendus. Il est recommandé de ne pas modifier ce paramètre. Ce paramètre n’est plus affiché dans la boîte de dialogue de l’outil. Par défaut, la propriété tolérance x,y de référence spatiale de la classe d'entités en entrée est utilisée. | Linear Unit |
output_type (Facultatif) | Spécifie le type d’intersection à renvoyer.
| String |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction Intersect en mode immédiat.
import arcpy
arcpy.env.workspace = "C:/data/RedRiver_basin.gdb"
arcpy.Intersect_analysis(["vegetation_stands", "road_buffer200m", "water_buffer100"], "mysites", "ALL")
arcpy.Intersect_analysis([["vegetation_stands", 2], ["road_buffer200m", 1], ["water_buffer100", 2]],
"mysites_ranked", "ALL")
Le script autonome suivant utilise la fonction Intersect dans le cadre d’un workflow avec d’autres outils d’analyse pour déterminer le type de végétation qui se trouve à moins de 100 mètres de tous les franchissements de cours d’eau.
#Name: VegRoadIntersect.py
# Purpose: Determine the type of vegetation within 100 meters of all stream
# crossings
# Import system modules
import arcpy
# Set the workspace (to avoid having to type in the full path to the data every
# time)
arcpy.env.workspace = "c:/data/data.gdb"
# Process: Find all stream crossings (points)
inFeatures = ["roads", "streams"]
intersectOutput = "stream_crossings"
arcpy.Intersect_analysis(inFeatures, intersectOutput, "", "", "point")
# Process: Buffer all stream crossings by 100 meters
bufferOutput = "stream_crossings_100m"
bufferDist = "100 meters"
arcpy.Buffer_analysis(intersectOutput, bufferOutput, bufferDist)
# Process: Clip the vegetation feature class to stream_crossing_100m
clipInput = "vegetation"
clipOutput = "veg_within_100m_of_crossings"
arcpy.Clip_analysis(clipInput, bufferOutput, clipOutput)
# Process: Summarize how much (area) of each type of vegetation is found
# within 100 meters of the stream crossings
statsOutput = "veg_within_100m_of_crossings_stats"
statsFields = [["shape_area", "sum"]]
caseField = "veg_type"
arcpy.Statistics_analysis(clipOutput, statsOutput, statsFields, caseField)
Environnements
Informations de licence
- Basic: Limité
- Standard: Limité
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?