20 #ifndef GEOS_OP_BUFFER_OFFSETCURVEBUILDER_H
21 #define GEOS_OP_BUFFER_OFFSETCURVEBUILDER_H
23 #include <geos/export.h>
25 #include <geos/operation/buffer/BufferParameters.h>
26 #include <geos/operation/buffer/OffsetSegmentGenerator.h>
33 #pragma warning(disable: 4251)
39 class CoordinateSequence;
76 precisionModel(newPrecisionModel),
119 std::vector<geom::CoordinateSequence*>& lineList);
140 double distance, std::vector<geom::CoordinateSequence*>& lineList,
141 bool leftSide,
bool rightSide) ;
155 std::vector<geom::CoordinateSequence*>& lineList);
172 static const double SIMPLIFY_FACTOR;
181 double simplifyTolerance(
double bufDistance);
193 std::unique_ptr<OffsetSegmentGenerator> getSegGen(
double dist);
The internal representation of a list of coordinates inside a Geometry.
Definition: CoordinateSequence.h:58
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
Specifies the precision model of the Coordinate in a Geometry.
Definition: PrecisionModel.h:87
Contains the parameters which describe how a buffer should be constructed.
Definition: BufferParameters.h:57
Computes the raw offset curve for a single Geometry component (ring, line or point).
Definition: OffsetCurveBuilder.h:62
void getLineCurve(const geom::CoordinateSequence *inputPts, double distance, std::vector< geom::CoordinateSequence * > &lineList)
This method handles single points as well as lines.
void 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.
const BufferParameters & getBufferParameters() const
Gets the buffer parameters being used to generate the curve.
Definition: OffsetCurveBuilder.h:86
bool isLineOffsetEmpty(double distance)
void getSingleSidedLineCurve(const geom::CoordinateSequence *inputPts, double distance, std::vector< geom::CoordinateSequence * > &lineList, bool leftSide, bool rightSide)
This method handles single points as well as lines.
Definition: OffsetSegmentGenerator.h:61
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26