## NAME

v.buffer - Create a buffer around features of given type (areas must contain centroid).

## KEYWORDS

vector

## SYNOPSIS

v.buffer
v.buffer help
v.buffer input=name output=name [type=string[,string,...]] [layer=integer] [buffer=float] [bufcol=string] [scale=float] [tolerance=float] [debug=string] [--overwrite]

### Flags:

--overwrite
  Force overwrite of output files

### Parameters:

input=name
  Name of input vector map
output=name
  Name for output vector map
type=string[,string,...]
  Type
  Options: point,line,boundary,centroid,area
  Default: point,line,area
layer=integer
  Layer number
  Default: 1
buffer=float
  Buffer distance in map units
bufcol=string
  Attribute column to use for buffer distances
scale=float
  Scaling factor for attribute column values
  Default: 1.0
tolerance=float
  Maximum distance between theoretical arc and polygon segments as multiple of buffer
  Default: 0.01
debug=string
  Stop the process at a certain stage
  Options: buffer,clean

## DESCRIPTION

v.buffer creates a buffer around features of given type with category of given field. The tolerance parameter controls the number of vector segments being generated (the smaller the value, the more vector segments are generated).

## EXAMPLES

#### Buffer around input lines

    v.buffer input=map output=buffer type=line buffer=100

#### Circles around input points

    v.buffer input=pointsmap output=circles type=point buffer=1000

Note that attributes are not transferred (due to potential buffer overlap which cannot be resolved automatically).

#### Non-overlapping circles around input points with attribute transfer

    v.buffer input=archsites output=circles type=point buffer=200
    # change original points to centroids:
    v.type in=archsites out=archcentroids type=point,centroid
    # patch circles and centroids:
    v.patch in=archcentroids,circles out=circles_db
    # attach attributes, either use
    # db.copy ...
    # or link to the original table:
    v.db.connect map=circles_db table=archsites field=1 key=cat driver=dbf \
    database='$GISDBASE/$LOCATION_NAME/$MAPSET/dbf'

## BUGS

For some data v.buffer can produce strange results, especially if the buffer size is bigger than input features. Usually you can solve the problem if you run v.buffer more times with smaller buffer.

The bufcol dynamic buffer distance parameter has problems cleaning complex features. (holes left filled, etc.) If you experience problems try running v.buffer multiple times with a single buffer distance and patch the results with v.patch and remove any overlaps with v.extract -d.

## SEE ALSO

r.buffer, v.extract, v.type, v.patch, v.db.connect

## AUTHOR

Radim Blazek

Last changed: $Date: 2006/09/20 13:55:20 $

Main index - vector index - Full index