...one of the most highly
regarded and expertly designed C++ library projects in the
world.

— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards

Calculates the buffer of a geometry.

The free function buffer calculates the buffer (a polygon being the spatial point set collection within a specified maximum distance from a geometry) of a geometry.

template<typename Input, typename Output, typename Distance> void buffer(Input const & geometry_in, Output & geometry_out, Distance const & distance, Distance const & chord_length = -1)

Type |
Concept |
Name |
Description |
---|---|---|---|

Input const & |
Any type fulfilling a Geometry Concept |
geometry_in |
A model of the specified concept |

Output & |
Any type fulfilling a Geometry Concept |
geometry_out |
A model of the specified concept |

Distance const & |
numerical type (int, double, ttmath, ...) |
distance |
The distance to be used for the buffer |

Distance const & |
numerical type (int, double, ttmath, ...) |
chord_length |
(optional) The length of the chord's in the generated arcs around points or bends |

Either

`#include <boost/geometry/geometry.hpp>`

Or

`#include <boost/geometry/algorithms/buffer.hpp>`

The function buffer implements function Buffer from the OGC Simple Feature Specification.

Note | |
---|---|

The current implemetation only enlarges a box, which is not defined by OGC. A next version of the library will contain a more complete implementation |

Case |
Behavior |
---|---|

Rectangle/Rectangle |
Returns a new rectangular box, enlarged with the specified distance. It is allowed that "geometry_out" the same object as "geometry_in" |