Buffering and offsetting geometries
A buffer is a very common GIS operation. PostGIS can create polygonal buffers from any geometry with configurable distance and approximation levels.
For example, a simple 1,000 meter buffer from a Point looks like the following:
SELECT ST_Buffer( (SELECT wkb_geometry FROM points WHERE osm_id = '253525668'), 1000);
A simple buffer with default parameters
The first argument is an input geometry, and the second is the buffer distance in the units of the geometry's coordinate system.
Note
If the geometry is in a latitude-longitude coordinate system, then cast the geometry to a Geography type in order to be able to give the distance in meters.
The default buffer uses eight segments to approximate a quarter circle. If it's too coarse, more segments can be introduced at the expense of processing power:
SELECT ST_Buffer( (SELECT wkb_geometry FROM points WHERE osm_id = '253525668'), 1000,32);
We can also do the opposite, such as when we create an octagonal buffer...