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 int newSegmentIndex,
double newDist)
62 segmentIndex(newSegmentIndex)
65 bool isEndPoint(
int maxSegmentIndex)
const {
66 if (segmentIndex==0 && dist==0.0)
return true;
67 if (segmentIndex==maxSegmentIndex)
return true;
75 int getSegmentIndex()
const {
return segmentIndex; }
77 double getDistance()
const {
return dist; }
86 if ( ei1.segmentIndex < ei2.segmentIndex )
return true;
87 if ( ei1.segmentIndex == ei2.segmentIndex )
89 if ( ei1.dist < ei2.dist )
return true;
99 struct GEOS_DLL EdgeIntersectionLessThen {
100 bool operator()(
const EdgeIntersection *ei1,
101 const EdgeIntersection *ei2)
const 110 os << e.coord <<
" seg # = " << e.segmentIndex <<
" dist = " << e.dist;
117 #endif // ifndef GEOS_GEOMGRAPH_EDGEINTERSECTION_H Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
Definition: EdgeIntersection.h:45
bool operator<(const EdgeIntersection &ei1, const EdgeIntersection &ei2)
Strict weak ordering operator for EdgeIntersection.
Definition: EdgeIntersection.h:84
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25