Zone tampon (Analyse)

Résumé

Crée une zone tampon à une distance donnée des entités en entrée.

Des outils alternatifs sont disponibles pour les opérations de zone tampon. Reportez-vous à la documentation des outils Pairwise Buffer (Zone tampon deux par deux) et Graphic Buffer (Zone tampon graphique) pour plus de détails.

Pour en savoir plus sur le fonctionnement de l’outil Zone tampon

Illustration

Illustration de l'outil Zone tampon

Utilisation

  • Comme la rubrique Fonctionnement de l’outil Zone tampon l’explique, une des fonctionnalités importantes de l’outil Zone tampon est le paramètre Method (Méthode), qui définit le mode de génération des zones tampon. Les deux méthodes de base pour construire des zones tampon, euclidienne et géodésique, sont décrites comme suit :

    • Les zones tampon euclidiennes mesurent la distance dans un plan cartésien bidimensionnel, où les distances en ligne droite ou euclidiennes sont calculées entre deux points d’une surface plane (plan cartésien). Les zones tampon euclidiennes sont le type de zone tampon le plus courant et conviennent à l’analyse de distances autour d’entités dans un système de coordonnées projetées concentrées dans une surface relativement petite (par exemple, une zone UTM).
    • Les zones tampon géodésiques tiennent compte de la forme réelle de la Terre (ellipsoïdale, ou plus exactement géoïdale). Les distances sont calculées entre deux points d'une surface courbe (forme géoïdale), et non entre deux points d'une surface plane (plan cartésien). Il est recommandé de toujours créer des zones tampon géodésiques dans les cas suivants :
      • Vos entités en entrée sont dispersées (elles couvrent plusieurs zones UTM, de vastes régions ou même l’ensemble du globe).
      • La référence spatiale (projection cartographique) de vos entités en entrée déforme les distances en vue de préserver d’autres propriétés, telles que la surface.
      Les zones tampon géodésiques peuvent sembler inhabituelles sur une carte plane. Toutefois, lorsqu’elles sont affichées sur un globe, ces zones tampon semblent correctes (vous pouvez également utiliser une scène 3D ou ArcGIS Earth 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.

    Le paramètre Method (Méthode) détermine le mode de création des zones tampon.

    • Planar (Planaire) (method = "PLANAR" dans Python) est l’option par défaut. Cette option détermine automatiquement la méthode à utiliser en fonction du système de coordonnées de l’entrée.
      • Si les entités en entrée disposent d'un système de coordonnées projetées, des zones tampon euclidiennes sont créées.
      • Si les entités en entrée disposent d’un système de coordonnées géographiques et que vous spécifiez une valeur Buffer Distance (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), des zones tampon géodésiques sont créées.
      • Cette option produit le même résultat que l’outil Zone tampon avant ArcGIS 10.3.
    • Geodesic (Géodésique) (method = "GEODESIC" dans Python) crée une zone tampon géodésique de préservation de la forme, quel que soit le système de coordonnées en entrée. La zone tampon géodésique de préservation de la forme densifie les entités en entrée avant de créer les zones tampon géodésiques en sortie en vue de générer des zones tampon qui représentent plus fidèlement la forme des entités en entrée. Si vous vous préoccupez de la forme de vos zones tampon, ainsi que du degré de correspondance de leur forme avec les entités en entrée d'origine, il est recommandé d'utiliser cette option, en particulier lorsque vos données en entrée se trouvent dans un système de coordonnées géographiques. Dans certains cas, cette opération peut prendre plus de temps que si vous choisissez l’option Planar (Planaire) pour créer la zone tampon géodésique, mais vous obtenez une zone tampon qui correspond davantage à la forme de l’entité en entrée.

    Remarque :

    Vous pouvez changer le système de coordonnées d’une classe d’entités à l’aide de l’outil Projeter ou 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 créer des zones tampon.

    Lorsque vous utilisez la méthode Planar (Planaire), vous pouvez améliorer 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 peuvent contenir des segments d’arc circulaire (lors de la bufférisation de points, la sortie est toujours constituée d’arcs circulaires). Si les zones tampon contenant 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 projetez 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 densifiées.

  • 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 de l’entrée. Lorsque vous utilisez la méthode Geodesic (Géodésique) pour créer des zones tampon, la distance de la zone tampon saisie est convertie en mètres dans tous les cas.

    Si un champ nommé BUFF_DIST est présent dans l’entrée, ses valeurs sont remplacées dans la sortie. Si l’option Dissolve Type (Type de fusion) est utilisée avec la valeur All (Tout) ou List (Liste) (ALL ou LIST dans Python), la sortie ne comporte pas ce champ.

  • La classe d’entités en sortie contient un champ ORIG_FID qui contient l’ID 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 (Dissolve Type) All (Tout) ou List (Liste) 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 aucune entité de géométrie nulle n’est écrite dans la classe d’entités en sortie.

  • Si les distances de la zone tampon sont déterminées par un champ de l’entrée, les valeurs du champ peuvent correspondre à un nombre (par exemple, 5) ou à un nombre accompagné d’une unité linéaire valide (5 kilomètres, par exemple). Si une valeur de champ est un nombre, la distance est supposée être exprimée dans l’unité linéaire de la référence spatiale de l’entrée (à moins que l’entrée ne se trouve 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 de l’entrée est utilisée par défaut.

    Utilisation d'un champ de zone tampon pour les distances de la zone tampon
  • Le bouton Add Field (Ajouter un champ) du paramètre Dissolve Field(s) (Champ(s) de fusion) n’est utilisé que dans ModelBuilder. Dans ModelBuilder, si l’outil précédent n’a pas été exécuté ou que ses données dérivées n’existent pas, le paramètre Dissolve Field(s) (Champ(s) de fusion) peut ne comporter aucun nom de champ. Le bouton Add Field (Ajouter un champ) permet d’ajouter des champs attendus à la liste Dissolve Field(s) (Champ(s) de fusion) afin de renseigner la boîte de dialogue de l’outil Buffer (Zone tampon).

  • Les opérations de tampon ne prennent pas en charge le transfert de valeurs z des entités de tampon en entrée aux entités de tampon en sortie.

  • Les opérations de tampon ne prennent pas en charge le transfert de valeurs m des entités de tampon en entrée aux entités de tampon en sortie.

  • 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é.

    L’environnement Parallel Processing Factor (Facteur de traitement parallèle) est seulement pris en charge lors de la bufférisation d’entités linéaires et surfaciques.

  • Licence :

    Les options de paramètre Side Type (Type de côté) (line_side) Left (Gauche), Right (Droite) et Outside only (En dehors uniquement) (LEFT, RIGHT et OUTSIDE_ONLY dans Python) et l’option de paramètre End Type (Type d’extrémité) (line_end_type) Flat (Plat) (FLAT dans Python) sont uniquement disponibles avec une licence Desktop Advanced.

Syntaxe

arcpy.analysis.Buffer(in_features, out_feature_class, buffer_distance_or_field, {line_side}, {line_end_type}, {dissolve_option}, {dissolve_field}, {method})
ParamètreExplicationType 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, si l'unité linéaire souhaitée comporte deux mots, tels que Decimal Degrees (Degrés décimaux), fusionnez ces deux mots (par exemple, 20 DecimalDegrees).

Linear Unit; Field
line_side
(Facultatif)

Spécifie les côtés des entités en entrée à buffériser.

  • FULLPour les entités linéaires en entrée, les zones tampon sont générées des deux côtés de la ligne. Pour les entités surfaciques en entrée, les zones tampon sont générées autour du polygone. Elles contiennent et sont superposées à la surface des entités en entrée. Pour les entités ponctuelles en entrée, les zones tampon sont générées autour du point. Il s’agit de l’option par défaut.
  • LEFTPour les entités linéaires en entrée, les zones tampon sont générées sur la gauche topologique de la ligne. Cette option n'est pas valide pour les entités surfaciques en entrée.
  • RIGHTPour les entités linéaires en entrée, les zones tampon sont générées sur la droite topologique de la ligne. Cette option n'est pas valide pour les entités surfaciques en entrée.
  • OUTSIDE_ONLYPour les entités surfaciques en entrée, les zones tampon sont générées à l’extérieur du polygone en entrée uniquement (la surface à l’intérieur du polygone en entrée est effacée de la zone tampon en sortie). Cette option n'est pas valide pour les entités linéaires en entrée.
Licence :

Ce paramètre facultatif n'est pas disponible avec une licence Desktop Basic ou Desktop Standard.

String
line_end_type
(Facultatif)

Spécifie la 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.

  • ROUNDLes extrémités de la zone tampon sont arrondies, avec une forme en demi-cercle. Il s’agit de l’option par défaut.
  • FLATLes extrémités de la zone tampon sont plates ou carrées et se terminent à l'extrémité de l'entité linéaire en entrée.
Licence :

Ce paramètre facultatif n'est pas disponible avec une licence Desktop Basic ou Desktop Standard.

String
dissolve_option
(Facultatif)

Spécifie le type de fusion à effectuer pour supprimer les superpositions de la zone tampon.

  • NONEUne zone tampon est conservée par entité, indépendamment de la superposition. Il s’agit de l’option par défaut.
  • ALLFusionne toutes les zones tampon en une entité unique en supprimant les superpositions éventuelles.
  • LISTLes zones tampon ayant des valeurs attributaire identiques dans les champs répertoriés (provenant des entités en entrée) sont fusionnées.
String
dissolve_field
[dissolve_field,...]
(Facultatif)

Liste de champs des entités en entrée sur lesquelles les zones tampon en sortie seront fusionnées. Les zones tampon ayant des valeurs attributaire identiques dans les champs répertoriés (provenant des entités en entrée) sont fusionnées.

Field
method
(Facultatif)

Indique la méthode à utiliser, planaire ou géodésique, pour créer la zone tampon.

  • PLANARSi les entités en entrée sont dans un système de coordonnées projetées, des zones tampon euclidiennes sont créées. Si les entités en entrée sont dans un système de coordonnées géographiques et que la distance de la zone tampon est en unités linéaires (mètres, pieds, etc., par opposition aux unités angulaires telles que les degrés), des zones tampon géodésiques sont créées. Il s’agit de l’option par défaut. Vous pouvez utiliser le paramètre d’environnement Système de coordonnées en sortie pour indiquer le système de coordonnées à utiliser. Par exemple, si vos entités en entrée sont dans un système de coordonnées projetées, vous pouvez définir l’environnement sur un système de coordonnées géographiques afin de créer des zones tampon géodésiques.
  • GEODESICToutes les zones tampon sont créées à l’aide d’une méthode de zone tampon géodésique de préservation de la forme, quel que soit le système de coordonnées en entrée.
String

Exemple de code

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

Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction Buffer.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.Buffer_analysis("roads", "C:/output/majorrdsBuffered", "100 Feet", "FULL", 
                      "ROUND", "LIST", "Distance")
Exemple 2 d'utilisation de l'outil Zone tampon (script autonome)

Identifiez 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 that exclude areas heavily 
# impacted by major roads
# Import system modules 
import arcpy
# Set environment settings
arcpy.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)

Informations de licence

  • Basic: Limité
  • Standard: Limité
  • Advanced: Oui

Rubriques connexes