Buffer (Analysis)

Summary

Creates buffer polygons around input features to a specified distance. An optional dissolve can be performed to combine overlapping buffers.

Learn more about how Buffer works

Illustration

Buffer illustration

Usage

Syntax

Buffer_analysis (in_features, out_feature_class, buffer_distance_or_field, {line_side}, {line_end_type}, {dissolve_option}, {dissolve_field})
ParameterExplanationData Type
in_features

The input point, line, or polygon features to be buffered.

Feature Layer
out_feature_class

The feature class containing the output feature buffers.

Feature Class
buffer_distance_or_field

The distance around the input features in which buffer zones are created. Distances can be provided as either a value representing a linear distance or as a numeric field from the input features that contains the linear distances to buffer each feature.

If the Distance linear units are not specified or are entered as Unknown, the linear unit of the input features' spatial reference is used.

Linear unit ; Field
line_side
(Optional)

The side(s) of the input features that will be buffered.

  • FULLFor line input features, buffers will be generated on both sides of the line. For polygon input features, buffers will be generated around the polygon and will contain and overlap the area of the input features. For point input features, buffers will be generated around the point. This is the default.
  • LEFTFor line input features, buffers will be generated on the topological left of the line. This option is not valid for polygon input features.
  • RIGHTFor line input features, buffers will be generated on the topological right of the line. This option is not valid for polygon input features.
  • OUTSIDE_ONLYFor polygon input features, buffers will be generated only outside the input polygon (the area inside the input polygon will be erased from the output buffer). This option is not valid for line input features.
LicenseLicense:

This optional parameter is not available with an ArcView or ArcEditor license.

String
line_end_type
(Optional)

The shape of the buffer at the end of line input features. This parameter is not valid for polygon input features.

  • ROUNDThe ends of the buffer will be round, in the shape of a half circle. This is the default.
  • FLATThe ends of the buffer will be flat, or squared, and will end at the endpoint of the input line feature.
LicenseLicense:

This optional parameter is not available with an ArcView or ArcEditor license.

String
dissolve_option
(Optional)

Specifies the dissolve to be performed to remove output buffer overlap.

  • NONEAn individual buffer for each feature is maintained, regardless of overlap. This is the default.
  • ALLAll buffers are dissolved together into a single feature, removing any overlap.
  • LISTAny buffers sharing attribute values in the listed fields (carried over from the input features) are dissolved.
String
dissolve_field
[dissolve_field,...]
(Optional)

The list of field(s) from the input features on which to dissolve the output buffers. Any buffers sharing attribute values in the listed fields (carried over from the input features) are dissolved.

Field

Code Sample

Buffer Example (Python Window)

The following Python Window script demonstrates how to use the Buffer tool:

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.Buffer_analysis("roads", "C:/output/majorrdsBuffered" "100 Feet", "FULL", "ROUND", "LIST", "Distance")
Buffer Example (Stand-alone Script)

Find areas of suitable vegetation that exclude areas heavily impacted by major roads:

# Name: Buffer.py
# Description: Find areas of suitable vegetation which exclude areas heavily impacted by major roads
# Author: ESRI

# 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)

Environments

Related Topics

Licensing Information

ArcView: Yes
ArcEditor: Yes
ArcInfo: Yes

4/4/2012