#include <geos/opBuffer.h>
Public Member Functions | |
OffsetCurveBuilder (const geom::PrecisionModel *newPrecisionModel, int quadrantSegments=DEFAULT_QUADRANT_SEGMENTS) | |
void | setEndCapStyle (int newEndCapStyle) |
void | getLineCurve (const geom::CoordinateSequence *inputPts, double distance, std::vector< geom::CoordinateSequence * > &lineList) |
void | getRingCurve (const geom::CoordinateSequence *inputPts, int side, double distance, std::vector< geom::CoordinateSequence * > &lineList) |
Static Public Attributes | |
static const int | DEFAULT_QUADRANT_SEGMENTS = 8 |
The default number of facets into which to divide a fillet of 90 degrees. |
A raw offset curve line is not noded - it may contain self-intersections (and usually will). The final buffer polygon is computed by forming a topological graph of all the noded raw curves and tracing outside contours. The points in the raw curve are rounded to the required precision model.
Last port: operation/buffer/OffsetCurveBuilder.java rev. 1.9
void geos::operation::buffer::OffsetCurveBuilder::getLineCurve | ( | const geom::CoordinateSequence * | inputPts, | |
double | distance, | |||
std::vector< geom::CoordinateSequence * > & | lineList | |||
) |
This method handles single points as well as lines. Lines are assumed to not be closed (the function will not fail for closed lines, but will generate superfluous line caps).
lineList | the std::vector to which CoordinateSequences will be pushed_back |
void geos::operation::buffer::OffsetCurveBuilder::getRingCurve | ( | const geom::CoordinateSequence * | inputPts, | |
int | side, | |||
double | distance, | |||
std::vector< geom::CoordinateSequence * > & | lineList | |||
) |
This method handles the degenerate cases of single points and lines, as well as rings.
lineList | the std::vector to which CoordinateSequences will be pushed_back |
const int geos::operation::buffer::OffsetCurveBuilder::DEFAULT_QUADRANT_SEGMENTS = 8 [static] |