GEOS 3.14.0dev
Public Member Functions | List of all members
geos::operation::buffer::BufferCurveSetBuilder Class Reference

Creates all the raw offset curves for a buffer of a Geometry. More...

#include <BufferCurveSetBuilder.h>

Public Member Functions

 BufferCurveSetBuilder (const geom::Geometry &newInputGeom, double newDistance, const geom::PrecisionModel *newPm, const BufferParameters &newBufParams)
 Constructor.
 
 ~BufferCurveSetBuilder ()
 Destructor.
 
std::vector< noding::SegmentString * > & getCurves ()
 Computes the set of raw offset curves for the buffer.
 
void addCurves (const std::vector< geom::CoordinateSequence * > &lineList, geom::Location leftLoc, geom::Location rightLoc)
 Add raw curves for a set of CoordinateSequences.
 
void setInvertOrientation (bool p_isInvertOrientation)
 

Detailed Description

Creates all the raw offset curves for a buffer of a Geometry.

Raw curves need to be noded together and polygonized to form the final buffer area.

Member Function Documentation

◆ addCurves()

void geos::operation::buffer::BufferCurveSetBuilder::addCurves ( const std::vector< geom::CoordinateSequence * > &  lineList,
geom::Location  leftLoc,
geom::Location  rightLoc 
)

Add raw curves for a set of CoordinateSequences.

Parameters
lineListis a list of CoordinateSequence, ownership of which is transferred here
leftLocleft location
rightLocright location

◆ getCurves()

std::vector< noding::SegmentString * > & geos::operation::buffer::BufferCurveSetBuilder::getCurves ( )

Computes the set of raw offset curves for the buffer.

Each offset curve has an attached geomgraph::Label indicating its left and right location.

Returns
a Collection of SegmentStrings representing the raw buffer curves

◆ setInvertOrientation()

void geos::operation::buffer::BufferCurveSetBuilder::setInvertOrientation ( bool  p_isInvertOrientation)
inline

Sets whether the offset curve is generated using the inverted orientation of input rings. This allows generating a buffer(0) polygon from the smaller lobes of self-crossing rings.

Parameters
p_isInvertOrientationtrue if input ring orientation should be inverted

The documentation for this class was generated from the following file: