Zone tampon (Analyse)
Récapitulatif
Crée une zone tampon à une distance donnée des entités en entrée.
Pour en savoir plus sur le fonctionnement de l'outil Zone tampon
Illustration
Utilisation
-
Si vous mettez en mémoire tampon une classe d'entités projetée dont les entités couvrent une grande région, ou vous si utilisez une très grande distance de zone tampon, les distorsions de la projection peuvent entraîner des zones tampon incorrectes. Vous pouvez totalement éviter la distorsion lors de la bufférisation en utilisant une classe d'entités dotée d'un système de coordonnées géographiques et en spécifiant la valeur de Distance de la zone tampon en unités linéaires (mètres, pieds, etc., par opposition aux unités angulaires telles que les degrés). Avec cette combinaison d'entrées, l'outil génère de véritables zones tampon géodésiques qui représentent avec précision les distances sur la surface terrestre. Les zones tampon géodésiques peuvent sembler étranges sur une carte plane, mais elles paraissent correctes sur un globe (vous pouvez utiliser les applications ArcGlobe ou ArcGIS Explorer pour afficher des données géographiques sur un globe tridimensionnel). Pour en savoir plus, reportez-vous à la rubrique Fonctionnement de l'outil Zone tampon.
Remarque :Vous pouvez modifier le système de coordonnées d'une classe d'entités à l'aide de l'outil Projeter, ou vous pouvez définir l'environnement de géotraitement Système de coordonnées en sortie avant d'exécuter l'outil Zone tampon. Ce système de coordonnées est utilisé pour la création de zones tampon.
Améliorez l'exactitude des zones tampon créées avec les entrées projetées à l'aide d'une projection qui réduit la distorsion de distance, comme une projection Equidistante conique ou une Projection azimutale équidistante, adaptée à votre entrée d'un point de vue géographique.
Lors de la bufférisation d'entités dans un système de coordonnées projetées avec une sortie vers une classe d'entités de géodatabase, les géométries créées contiennent souvent des segments d'arc circulaire, notamment lors de la bufférisation de points. Si ces zones tampon comportant des arcs circulaires sont une nouvelle fois projetées vers un système de coordonnées différent, l'emplacement et la taille des zones tampon d'origine sont transformés, mais la forme des zones tampon ne change pas : les zones tampon à nouveau projetées ne représentent plus avec exactitude la surface couverte par la zone tampon d'origine. Si vous souhaitez projeter une nouvelle fois les zones tampon comportant des arcs circulaires, utilisez tout d'abord l'outil Densifier pour convertir des segments d'arc circulaire en lignes droites, puis projetez une nouvelle fois les zones tampon.
-
La classe d'entités en sortie comporte un champ, BUFF_DIST, qui indique la distance de zone tampon utilisée pour mettre en mémoire tampon chaque entité, dans l'unité linéaire du système de coordonnées des entités en entrée. Si un champ nommé BUFF_DIST est présent dans l'entrée, ses valeurs sont remplacées dans la sortie. Si un Type de fusion ALL ou LIST est utilisé, la sortie ne comporte pas ce champ.
Le nom de la classe d'entités en sortie possèdera un champ, ORIG_FID, qui contient le FID de l'entité en entrée pour laquelle la zone tampon a été créée. Si un champ nommé ORIG_FID est présent dans l'entrée, ses valeurs sont remplacées dans la sortie. Si un Type de fusion ALL ou LIST est utilisé, la sortie ne comporte pas ce champ.
-
Lors de la création de zones tampon autour d'entités polygone, l'utilisation de distances de zone tampon négatives permet de créer des zones tampon à l'intérieur des entités polygone. L'utilisation d'une distance de zone tampon négative réduit les limites des polygones de la distance spécifiée.
Attention :Si la distance de zone tampon négative est suffisante pour réduire le polygone à néant, une géométrie nulle est générée. Un message d'avertissement s'affiche et les entités de géométrie nulles éventuelles ne sont pas écrites dans la classe d'entités en sortie.
-
Si les distances de la zone tampon sont déterminées par un champ des entités en entrée, les valeurs du champ peuvent correspondre à un nombre (5, par exemple) ou à un nombre accompagné d'une unité linéaire valide (5 kilomètres, par exemple). Si une valeur de champ est simplement un nombre, la distance est supposée être exprimée dans l'unité linéaire de la référence spatiale des entités en entrée (à moins que les entités en entrée ne se trouvent dans un système de coordonnées géographiques, auquel cas la valeur doit être en mètres). Si l'unité linéaire indiquée dans les valeurs de champ est incorrecte ou non reconnue, l'unité linéaire de la référence spatiale des entités en entrée est utilisée par défaut.
-
Le bouton Ajouter un champ du paramètre Champ(s) de fusion est utilisé uniquement dans ModelBuilder. Dans ModelBuilder, lorsque l'outil précédent n'a pas été exécuté ou si ses données dérivées n'existent pas, le paramètre Champ(s) de fusion peut ne comporter aucun nom de champ. Le bouton Ajouter un champ permet l'ajout des champs attendus à la liste Champ(s) de fusion afin de renseigner la boîte de dialogue de l'outil Zone tampon.
La classe d'entités en sortie possède un champ ORIG_FID lorsque l'option fusion est définie sur NONE. Les valeurs ORIG_FID de l'entité en sortie sont les valeurs ObjectID provenant de l'entité en entrée associée.
Les options du Type de côté (line_side), LEFT, RIGHT et OUTSIDE_ONLY ainsi que l'option de Type d'extrémité (line_end_type) FLAT sont uniquement disponibles avec une licence Advanced.
Syntaxe
Paramètre | Explication | Type de données |
in_features |
Entités point, ligne ou polygone en entrée à buffériser. | Feature Layer |
out_feature_class |
Classe d'entités contenant les zones tampon en sortie. | Feature Class |
buffer_distance_or_field |
Distance autour des entités en entrée à buffériser. Les distances peuvent être fournies en tant que valeur représentant une distance linéaire ou en tant que champ des entités en entrée contenant la distance utilisée pour bufferiser chaque entité. Si les unités linéaires ne sont pas indiquées ou sont spécifiées inconnues, l'unité linéaire de la référence spatiale des entités en entrée est utilisée. Lors de la spécification d'une distance pour le script, si l'unité linéaire souhaitée comporte deux mots, comme "Degrés décimaux", fusionnez ces deux mots (par exemple, "20 DegrésDécimaux"). | Linear unit ;Field |
line_side (Facultatif) |
Côté(s) des entités en entrée à buffériser.
Licence : Ce paramètre facultatif n'est pas disponible avec une licence De base ou Standard. | String |
line_end_type (Facultatif) |
Forme de la zone tampon aux extrémités des entités linéaires en entrée. Ce paramètre n'est pas valide pour les entités surfaciques en entrée.
Licence : Ce paramètre facultatif n'est pas disponible avec une licence De base ou Standard. | String |
dissolve_option (Facultatif) |
Indique la fusion à effectuer pour supprimer les superpositions de la zone tampon.
| String |
dissolve_field [dissolve_field,...] (Facultatif) |
Liste du ou des champs des entités en entrée sur lesquelles les zones tampon en sortie doivent être fusionnées. Les zones tampons éventuelles ayant des valeurs attributaire identiques dans les champs listés (provenant des entités en entrée) sont fusionnées. | Field |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil Zone tampon.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.Buffer_analysis("roads", "C:/output/majorrdsBuffered", "100 Feet", "FULL", "ROUND", "LIST", "Distance")
Trouver les surfaces de végétation convenable en excluant les surfaces très affectées par les routes principales :
# Name: Buffer.py
# Description: Find areas of suitable vegetation which exclude areas heavily impacted by major roads
# import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data/Habitat_Analysis.gdb"
# Select suitable vegetation patches from all vegetation
veg = "vegtype"
suitableVeg = "C:/output/Output.gdb/suitable_vegetation"
whereClause = "HABITAT = 1"
arcpy.Select_analysis(veg, suitableVeg, whereClause)
# Buffer areas of impact around major roads
roads = "majorrds"
roadsBuffer = "C:/output/Output.gdb/buffer_output"
distanceField = "Distance"
sideType = "FULL"
endType = "ROUND"
dissolveType = "LIST"
dissolveField = "Distance"
arcpy.Buffer_analysis(roads, roadsBuffer, distanceField, sideType, endType, dissolveType, dissolveField)
# Erase areas of impact around major roads from the suitable vegetation patches
eraseOutput = "C:/output/Output.gdb/suitable_vegetation_minus_roads"
xyTol = "1 Meters"
arcpy.Erase_analysis(suitableVeg, roadsBuffer, eraseOutput, xyTol)