16 #ifndef GEOS_PLANARGRAPH_DIRECTEDEDGE_H 17 #define GEOS_PLANARGRAPH_DIRECTEDEDGE_H 19 #include <geos/export.h> 20 #include <geos/planargraph/GraphComponent.h> 21 #include <geos/geom/Coordinate.h> 28 namespace planargraph {
35 namespace planargraph {
52 typedef std::list<DirectedEdge*> NonConstList;
53 typedef std::list<const DirectedEdge*> ConstList;
54 typedef std::vector<DirectedEdge*> NonConstVect;
67 typedef std::vector<const DirectedEdge*> ConstVect;
68 typedef std::vector<DirectedEdge*> Vect;
79 static std::vector<Edge*>* toEdges(
80 std::vector<DirectedEdge*>& dirEdges);
90 static void toEdges(std::vector<DirectedEdge*>& dirEdges,
91 std::vector<Edge*>& parentEdges);
109 bool newEdgeDirection);
115 Edge* getEdge()
const;
121 void setEdge(
Edge* newParentEdge);
127 int getQuadrant()
const;
139 bool getEdgeDirection()
const;
144 Node* getFromNode()
const;
149 Node* getToNode()
const;
162 double getAngle()
const;
225 std::string print()
const;
239 #endif // GEOS_PLANARGRAPH_DIRECTEDEDGE_H bool pdeLessThan(DirectedEdge *first, DirectedEdge *second)
Strict Weak comparator function for containers.
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
Represents a directed edge in a PlanarGraph.
Definition: planargraph/DirectedEdge.h:46
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25
Represents an undirected edge of a PlanarGraph.
Definition: planargraph/Edge.h:54
The base class for all graph component classes.
Definition: planargraph/GraphComponent.h:46
A node in a PlanarGraph is a location where 0 or more Edge meet.
Definition: planargraph/Node.h:45
std::ostream & operator<<(std::ostream &, const DirectedEdge &)
Output operator.