22#include <geos/geom/Coordinate.h>
23#include <geos/geom/CoordinateSequence.h>
24#include <geos/geom/CoordinateList.h>
65 snapTolerance(nSnapTol),
66 allowSnappingToSourceVertices(false)
68 std::size_t s = srcPts.size();
69 isClosed = s < 2 ? false : srcPts[0].equals2D(srcPts[s - 1]);
76 setAllowSnappingToSourceVertices(
bool allow)
78 allowSnappingToSourceVertices = allow;
87 bool allowSnappingToSourceVertices;
97 geom::Coordinate::ConstVect::const_iterator findSnapForVertex(
const geom::Coordinate& pt,
145 geom::CoordinateList::iterator findSegmentToSnap(
147 geom::CoordinateList::iterator from,
148 geom::CoordinateList::iterator too_far);
150 geom::CoordinateList::iterator findVertexToSnap(
152 geom::CoordinateList::iterator from,
153 geom::CoordinateList::iterator too_far);
156 LineStringSnapper(
const LineStringSnapper& other) =
delete;
157 LineStringSnapper& operator=(
const LineStringSnapper& rhs) =
delete;
A list of Coordinates, which may be set to prevent repeated coordinates from occuring in the list.
Definition: CoordinateList.h:54
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:58
std::vector< Coordinate > Vect
A vector of Coordinate objects (real object, not pointers)
Definition: Coordinate.h:75
std::vector< const Coordinate * > ConstVect
A vector of const Coordinate pointers.
Definition: Coordinate.h:69
Snaps the vertices and segments of a LineString to a set of target snap vertices.
Definition: LineStringSnapper.h:50
LineStringSnapper(const geom::Coordinate::Vect &nSrcPts, double nSnapTol)
Definition: LineStringSnapper.h:61
Basic namespace for all GEOS functionalities.
Definition: geos.h:39