22 #ifndef GEOS_GEOMGRAPH_EDGEINTERSECTION_H
23 #define GEOS_GEOMGRAPH_EDGEINTERSECTION_H
25 #include <geos/export.h>
27 #include <geos/geom/Coordinate.h>
29 #include <geos/inline.h>
58 size_t newSegmentIndex,
double newDist)
62 segmentIndex(newSegmentIndex)
66 isEndPoint(
size_t maxSegmentIndex)
const
68 if(segmentIndex == 0 && dist == 0.0) {
71 if(segmentIndex == maxSegmentIndex) {
84 getSegmentIndex()
const
96 return segmentIndex == other.segmentIndex &&
110 if(ei1.segmentIndex < ei2.segmentIndex) {
113 if(ei1.segmentIndex == ei2.segmentIndex) {
114 if(ei1.dist < ei2.dist) {
126 struct GEOS_DLL EdgeIntersectionLessThen {
128 operator()(
const EdgeIntersection* ei1,
129 const EdgeIntersection* ei2)
const
135 operator()(
const EdgeIntersection& ei1,
136 const EdgeIntersection& ei2)
const
146 os << e.coord <<
" seg # = " << e.segmentIndex <<
" dist = " << e.dist;
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
Represents a point on an edge which intersects with another edge.
Definition: EdgeIntersection.h:45
bool operator<(const EdgeIntersection &ei1, const EdgeIntersection &ei2)
Definition: EdgeIntersection.h:108
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26