20 #ifndef GEOS_NODING_SNAPROUND_SIMPLESNAPROUNDER_H
21 #define GEOS_NODING_SNAPROUND_SIMPLESNAPROUNDER_H
23 #include <geos/export.h>
27 #include <geos/inline.h>
29 #include <geos/noding/Noder.h>
30 #include <geos/algorithm/LineIntersector.h>
31 #include <geos/geom/Coordinate.h>
32 #include <geos/geom/PrecisionModel.h>
40 class LineIntersector;
44 class NodedSegmentString;
80 std::vector<SegmentString*>* getNodedSubstrings()
const;
82 void computeNodes(std::vector<SegmentString*>* inputSegmentStrings);
93 void computeVertexSnaps(
const std::vector<SegmentString*>& edges);
100 std::vector<SegmentString*>* nodedSegStrings;
102 void checkCorrectness(std::vector<SegmentString*>& inputSegmentStrings);
104 void snapRound(std::vector<SegmentString*>* segStrings,
118 void findInteriorIntersections(std::vector<SegmentString*>& segStrings,
126 void computeSnaps(
const std::vector<SegmentString*>& segStrings,
127 std::vector<geom::Coordinate>& snapPts);
151 #endif // GEOS_NODING_SNAPROUND_SIMPLESNAPROUNDER_H