20 #ifndef GEOS_OP_OVERLAY_SNAP_LINESTRINGSNAPPER_H
21 #define GEOS_OP_OVERLAY_SNAP_LINESTRINGSNAPPER_H
23 #include <geos/geom/Coordinate.h>
24 #include <geos/geom/CoordinateSequence.h>
25 #include <geos/geom/CoordinateList.h>
66 snapTolerance(nSnapTol),
67 allowSnappingToSourceVertices(false)
69 size_t s = srcPts.size();
70 isClosed = s < 2 ? false : srcPts[0].equals2D(srcPts[s - 1]);
77 setAllowSnappingToSourceVertices(
bool allow)
79 allowSnappingToSourceVertices = allow;
88 bool allowSnappingToSourceVertices;
98 geom::Coordinate::ConstVect::const_iterator findSnapForVertex(
const geom::Coordinate& pt,
146 geom::CoordinateList::iterator findSegmentToSnap(
148 geom::CoordinateList::iterator from,
149 geom::CoordinateList::iterator too_far);
151 geom::CoordinateList::iterator findVertexToSnap(
153 geom::CoordinateList::iterator from,
154 geom::CoordinateList::iterator too_far);
157 LineStringSnapper(
const LineStringSnapper& other) =
delete;
158 LineStringSnapper& operator=(
const LineStringSnapper& rhs) =
delete;
167 #endif // GEOS_OP_OVERLAY_SNAP_LINESTRINGSNAPPER_H