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