18 #include <geos/export.h>
19 #include <geos/geom/CoordinateSequence.h>
27 class CoordinateSequence;
29 class GeometryFactory;
58 std::unique_ptr<CoordinateSequence> sectionPts;
62 bool isEndInSameSegment(
double nextLoc)
const;
67 OffsetCurveSection(std::unique_ptr<CoordinateSequence> && secPts,
double pLoc,
double pLocLast)
68 : sectionPts(std::move(secPts))
74 std::unique_ptr<CoordinateSequence> releaseCoordinates();
76 double getLocation()
const {
return location; };
87 static std::unique_ptr<Geometry>
toLine(
88 std::vector<std::unique_ptr<OffsetCurveSection>>& sections,
91 static std::unique_ptr<Geometry> toGeometry(
92 std::vector<std::unique_ptr<OffsetCurveSection>>& sections,
95 static std::unique_ptr<OffsetCurveSection> create(
97 std::size_t start, std::size_t end,
98 double loc,
double locLast);
100 static bool OffsetCurveSectionComparator(
101 const std::unique_ptr<OffsetCurveSection>& a,
102 const std::unique_ptr<OffsetCurveSection>& b);
The internal representation of a list of coordinates inside a Geometry.
Definition: CoordinateSequence.h:56
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:217
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:70
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:197
Definition: LineString.h:66
Definition: OffsetCurveSection.h:49
static std::unique_ptr< Geometry > toLine(std::vector< std::unique_ptr< OffsetCurveSection >> §ions, const GeometryFactory *geomFactory)
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25