21 #include <geos/export.h>
27 #include <geos/geom/Coordinate.h>
28 #include <geos/noding/SegmentIntersector.h>
36 class LineIntersector;
62 bool hasIntersectionVar;
64 bool hasProperInterior;
68 geom::CoordinateXYZM properIntersectionPoint;
80 bool isTrivialIntersection(
const SegmentString* e0, std::size_t segIndex0,
90 int numInteriorIntersections;
91 int numProperIntersections;
98 hasIntersectionVar(
false),
100 hasProperInterior(
false),
102 properIntersectionPoint(),
105 numInteriorIntersections(0),
106 numProperIntersections(0),
120 const geom::CoordinateXYZM&
123 return properIntersectionPoint;
129 return hasIntersectionVar;
154 return hasProperInterior;
182 isAdjacentSegments(std::size_t i1, std::size_t i2)
184 return (i1 > i2 ? i1 - i2 : i2 - i1) == 1;
A LineIntersector is an algorithm that can both test whether two line segments intersect and compute ...
Definition: LineIntersector.h:53
Computes the intersections between two line segments in SegmentString and adds them to each string.
Definition: IntersectionAdder.h:54
bool hasInteriorIntersection()
An interior intersection is an intersection which is in the interior of some segment.
Definition: IntersectionAdder.h:162
void processIntersections(SegmentString *e0, std::size_t segIndex0, SegmentString *e1, std::size_t segIndex1) override
This method is called by clients of the SegmentIntersector class to process intersections for two seg...
const geom::CoordinateXYZM & getProperIntersectionPoint()
Definition: IntersectionAdder.h:121
bool hasProperInteriorIntersection()
A proper interior intersection is a proper intersection which is not contained in the set of boundary...
Definition: IntersectionAdder.h:152
bool isDone() const override
Always process all intersections.
Definition: IntersectionAdder.h:193
bool hasProperIntersection()
A proper intersection is an intersection which is interior to at least two line segments.
Definition: IntersectionAdder.h:142
Processes possible intersections detected by a Noder.
Definition: noding/SegmentIntersector.h:45
An interface for classes which represent a sequence of contiguous line segments.
Definition: SegmentString.h:47
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25