You are on page 1of 5

Li cense Level : Basi c Standard Advanced

Buffer (Analysis)
Desktop Geoprocessi ng Tool reference Anal ysi s tool box
Summary
Creates buffer polygons around input features to a specified distance.
Learn more about how Buffer works
Illustration
Usage
If buffering a projected feature class that has features covering a large region, or you are using a very
large buffer distance, distortions in the projection can cause inaccurate buffers to be produced. You can
completely avoid distortion when buffering by using a feature class that has a geographic coordinate
system and specifying a Buffer Distance in linear units (meters, feet, and so forth, as opposed to
angular units such as degrees). When this combination of inputs is used, the tool will generate
true geodesic buffers that accurately represent distances on Earth's surface. Geodesic buffers may
appear unusual on a flat map, but when displayed on a globe these buffers will look correct (you can
use the ArcGlobe or ArcGIS Explorer applications to view geographic data on a three-dimensional
globe). For more information, see How Buffer works.
Note: You can change the coordinate system of a feature class using
theProject tool, or you can set the Output Coordinate
Systemgeoprocessing environment before executing the Buffer tool,
and this coordinate system will be used in creating buffers.
Improve the accuracy of buffers created with projected inputs by using a projection that minimizes
distance distortion, such as an Equidistant Conic or an Azimuthal Equidistant projection, and is
geographically appropriate for your input.
When buffering features in a projected coordinate system with output to a geodatabase feature class,
the geometries created will often contain circular arc segments, especially when buffering points. If
these buffers that contain circular arcs are re-projected to a different coordinate system, the location
and size of the original buffers will be transformed, but the shape of the buffers will not change, causing
the re-projected buffers to no longer accurately represent the area covered by the original buffer. If you
wish to re-project buffers containing circular arcs, first use the Densify tool to convert circular arc
segments to straight lines, then re-project the buffers.
The output feature class will have a field, BUFF_DIST, that contains the buffer distance used to buffer
each feature, in the linear unit of the input features' coordinate system. If a Dissolve
Type ofALL or LIST is used, the output will not have this field.
When buffering polygon features, negative buffer distances can be used to create buffers inside the
polygon features. Using a negative buffer distance will reduce the polygons' boundaries by the distance
specified.
Caution: If the negative buffer distance is large enough to collapse the polygon to
nothing, a null geometry will be generated. A warning message will be
given, and any null geometry features will not be written to the output
feature class.
If a field from the Input Features is used to obtain buffer distances, the field's values can be either a
number (5) or a number with a valid linear unit (5 Kilometers). If a field value is simply a number, it
is assumed that the distance is in the linear unit of the Input Features' spatial reference (unless the
Input Features are in a geographic coordinate system, in which case, the value is assumed to be
inmeters). If the linear unit specified in the field values is invalid or not recognized, the linear unit of the
input features' spatial reference will be used by default.
The Dissolve Field(s) parameter Add Field button is used only in ModelBuilder. In ModelBuilder, where
the preceding tool has not been run or its derived data does not exist, the Dissolve Field(s) parameter
may not be populated with field names. The Add Field button allows expected fields to be added to
the Dissolve Field(s) list in order to complete the Buffer tool dialog box.
License: Side Type (line_side) options LEFT, RIGHT, and OUTSIDE_ONLY and
theEnd Type (line_end_type) option FLAT are only available with
an Advancedlicense.
Syntax
Buffer_analysis (in_features, out_feature_class, buffer_distance_or_field, {line_side}, {line_end_type},
{dissolve_option}, {dissolve_field})
Parameter Explanation Data Type
in_features
The input point, line, or polygon features to be
buffered.
Feature Layer
out_feature_class
The feature class containing the output buffers.
Feature Class
buffer_distance_or_field
The distance around the input features that will be
buffered. Distances can be provided as either a value
representing a linear distance or as a field from the
input features that contains the distance to buffer
each feature.
If linear units are not specified or are entered as
Linear unit ;Field
Unknown, the linear unit of the input features' spatial
reference is used.
When specifying a distance in scripting, if the desired
linear unit has two words, like Decimal Degrees,
combine the two words into one (for example, '20
DecimalDegrees').
line_side
(Optional)
The side(s) of the input features that will be buffered.
FULL For 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.
LEFT For line input features, buffers will be
generated on the topological left of the line. This
option is not valid for polygon input features.
RIGHT For line input features, buffers will be
generated on the topological right of the line.
This option is not valid for polygon input features.
OUTSIDE_ONLY For 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.
License:
This optional parameter is not
available with
a Basic or Standardlicense.
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.
ROUND The ends of the buffer will be round,
in the shape of a half circle. This is the default.
FLAT The ends of the buffer will be flat, or
squared, and will end at the endpoint of the input
line feature.
License:
This optional parameter is not
available with
a Basic or Standardlicense.
String
dissolve_option
(Optional)
Specifies the dissolve to be performed to remove
buffer overlap.
NONE An individual buffer for each feature is
maintained, regardless of overlap. This is the
default.
ALL All buffers are dissolved together into a
String
single feature, removing any overlap.
LIST Any buffers sharing attribute values in the
listed fields (carried over from the input features)
are dissolved.
dissolve_field
[dissolve_f ield,...]
(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",
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
# 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,
# 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
Default Output Z Value, M Resolution, M Tolerance, Output M Domain, Output XY Domain, Output Z
Domain, Output Coordinate System, Extent, Current Workspace, Geographic Transformations, Scratch
Workspace, Output has M values, Output has Z values, Output Spatial Grid 1, Output Spatial Grid 2, Output
Spatial Grid 3, XY Resolution, XY Tolerance, Z Resolution, Z Tolerance
Related Topics
An overview of the Proximity toolset
Licensing Information
ArcGIS for Desktop Basic: Limited
ArcGIS for Desktop Standard: Limited
ArcGIS for Desktop Advanced: Yes
Copyright 1995-2013 Esri. All rights reserved. 5/6/20

You might also like