Geospatial Modelling Environment

buffer (Buffer Features)

Buffers features using a constant or field based buffer distances, and optionally copies attributes


This command buffers features using a constant buffer distance, or using buffer distances specified in a field in the feature attribute table. The tool will also optionally copy the attributes from the input attribute table to the output attribute table.

The tool can also perform on-the-fly unit conversion if the coordinate system of the data source is defined. The default is to assume the buffer distance is specified in the same units as the coordinate system (e.g. meters for UTM data). This default option does not require that a coordinate system is defined. The unit conversions available are between meters, kilometers, miles and feet.

If the input data source is polygons, then you can use a negative buffer distance to create an inside buffer. If this results in an empty geometry (because the input polygon is too small to create an inside buffer) then no record is written to the output.

If the input features are polygons and the buffer distance is positive, then there is an additional option (the 'donut' parameter) to only output the portion of the buffer occurring outside of the original polygon. The donut parameter is ignored for all geometries other than polygons, and for zero or negative buffer distances.

Note that if you copy fields to the output table, the values may not appropriately reflect the properties of the buffered polygon. An obvious example is an AREA field: the value that is copied to the output file will reflect the area of the original polygon, not the buffered polygon. It is therefore important to delete or update fields that are copied but do not correctly reflect the buffered polygon.


buffer(in, out, distance, [units], [copyfields], [donut], [where]);

inthe input feature data source
outthe output polygon data source
distancethe buffer distance value, or a field name in the input layer that contains these values
[units]the units of the buffer distance (see help for details); the coordinate system must be defined to use this option (default=csu (coordinate system units); options: csu, m, km, mi, ft)
[copyfields](TRUE/FALSE) if TRUE the attribute fields from the input dataset are copied to the output dataset (default=FALSE)
[donut](TRUE/FALSE) if TRUE only the portion of the buffer occurring outside of the buffered polygon is written to the output dataset (default=FALSE)
[where]the selection statement that will be applied to the feature data source to identify a subset of features to process (see full Help documentation for further details)


buffer(in="C:\data\wells.shp", out="C:\data\wellbuff1km.shp", distance=1000);

buffer(in="C:\data\wells.shp", out="C:\data\wellbuffs.shp", distance="BUFFDIST");

buffer(in="C:\data\wells.shp", out="C:\data\wellbuff1km.shp", distance=1, units="km", copyfields=TRUE);

buffer(in="C:\data\lakes.shp", out="C:\data\lakeshore.shp", distance=100, donut=TRUE, copyfields=TRUE);


Please consider making a purchase to support the continued development of these tools  Read more...

Tips on how to use this interface efficiently 


Open Source GIS

Copyright © 2001-2014 Hawthorne L. Beyer, Ph.D., Spatial Ecology LLC    Connect on LinkedIn