21#include <geos/export.h>
23#include <geos/geom/Coordinate.h>
24#include <geos/geom/CoordinateSequence.h>
25#include <geos/geom/Envelope.h>
26#include <geos/noding/Noder.h>
27#include <geos/noding/SegmentString.h>
28#include <geos/noding/snap/SnappingPointIndex.h>
38class NodedSegmentString;
74 SnappingPointIndex snapIndex;
75 std::vector<std::unique_ptr<SegmentString>> nodedResult;
79 void seedSnapIndex(
const std::vector<SegmentString*>& segStrings);
81 void snapVertices(
const std::vector<SegmentString*>& segStrings, std::vector<SegmentString*>& nodedStrings);
83 std::unique_ptr<SegmentString> snapVertices(
const SegmentString* ss);
95 std::vector<std::unique_ptr<SegmentString>> snapIntersections(std::vector<SegmentString*>& inputSS);
105 : snapTolerance(p_snapTolerance)
106 , snapIndex(p_snapTolerance)
114 void computeNodes(
const std::vector<SegmentString*>& inputSegStrings)
override;
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:56
Computes all intersections between segments in a set of SegmentString.
Definition Noder.h:44
An interface for classes which represent a sequence of contiguous line segments.
Definition SegmentString.h:47
Definition SnappingNoder.h:68
SnappingNoder(double p_snapTolerance)
Definition SnappingNoder.h:104
std::vector< std::unique_ptr< SegmentString > > getNodedSubstrings() override
void computeNodes(const std::vector< SegmentString * > &inputSegStrings) override
Computes the noding for a collection of SegmentStrings.
Basic namespace for all GEOS functionalities.
Definition geos.h:38