19 #ifndef GEOS_NODING_INTERSECTIONADDER_H 20 #define GEOS_NODING_INTERSECTIONADDER_H 22 #include <geos/export.h> 28 #include <geos/inline.h> 30 #include <geos/geom/Coordinate.h> 31 #include <geos/noding/SegmentIntersector.h> 42 class LineIntersector;
68 bool hasIntersectionVar;
70 bool hasProperInterior;
86 bool isTrivialIntersection(
const SegmentString* e0,
size_t segIndex0,
96 int numInteriorIntersections;
97 int numProperIntersections;
104 hasIntersectionVar(
false),
106 hasProperInterior(
false),
108 properIntersectionPoint(
nullptr),
111 numInteriorIntersections(0),
112 numProperIntersections(0),
129 return properIntersectionPoint;
135 return hasIntersectionVar;
160 return hasProperInterior;
182 void processIntersections(
188 isAdjacentSegments(
size_t i1,
size_t i2)
190 return (i1 > i2 ? i1 - i2 : i2 - i1) == 1;
209 #endif // GEOS_NODING_INTERSECTIONADDER_H bool hasProperIntersection()
A proper intersection is an intersection which is interior to at least two line segments.
Definition: IntersectionAdder.h:148
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
An interface for classes which represent a sequence of contiguous line segments.
Definition: SegmentString.h:46
bool hasInteriorIntersection()
An interior intersection is an intersection which is in the interior of some segment.
Definition: IntersectionAdder.h:168
bool isDone() const override
Always process all intersections.
Definition: IntersectionAdder.h:199
A LineIntersector is an algorithm that can both test whether two line segments intersect and compute ...
Definition: LineIntersector.h:49
Computes the intersections between two line segments in SegmentString and adds them to each string.
Definition: IntersectionAdder.h:60
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25
Processes possible intersections detected by a Noder.
Definition: noding/SegmentIntersector.h:48
bool hasProperInteriorIntersection()
A proper interior intersection is a proper intersection which is not contained in the set of boundary...
Definition: IntersectionAdder.h:158
const geom::Coordinate * getProperIntersectionPoint()
Definition: IntersectionAdder.h:127