19 #ifndef GEOS_NODING_ITERATEDNODER_H
20 #define GEOS_NODING_ITERATEDNODER_H
22 #include <geos/export.h>
27 #include <geos/inline.h>
29 #include <geos/algorithm/LineIntersector.h>
30 #include <geos/noding/SegmentString.h>
31 #include <geos/noding/Noder.h>
55 class GEOS_DLL IteratedNoder :
public Noder {
58 static const int MAX_ITER = 5;
61 const geom::PrecisionModel* pm;
62 algorithm::LineIntersector li;
63 std::vector<SegmentString*>* nodedSegStrings;
70 void node(std::vector<SegmentString*>* segStrings,
71 int* numInteriorIntersections);
75 IteratedNoder(
const geom::PrecisionModel* newPm)
83 ~IteratedNoder()
override {}
96 setMaximumIterations(
int n)
101 std::vector<SegmentString*>*
102 getNodedSubstrings()
const override
104 return nodedSegStrings;
117 void computeNodes(std::vector<SegmentString*>* inputSegmentStrings)
override;
124 #endif // GEOS_NODING_ITERATEDNODER_H