GEOS 3.14.0dev
|
Represents an undirected edge of a PlanarGraph. More...
#include <Edge.h>
Public Types | |
typedef std::set< const Edge * > | ConstSet |
Set of const Edges pointers. | |
typedef std::set< Edge * > | NonConstSet |
Set of non-const Edges pointers. | |
typedef std::vector< Edge * > | NonConstVect |
Vector of non-const Edges pointers. | |
typedef std::vector< const Edge * > | ConstVect |
Vector of const Edges pointers. | |
Public Member Functions | |
Edge () | |
Constructs a Edge whose DirectedEdges are not yet set. | |
Edge (DirectedEdge *de0, DirectedEdge *de1) | |
Constructs an Edge initialized with the given DirectedEdges. | |
void | setDirectedEdges (DirectedEdge *de0, DirectedEdge *de1) |
Initializes this Edge's two DirectedEdges. | |
DirectedEdge * | getDirEdge (int i) |
Returns one of the DirectedEdges associated with this Edge. | |
DirectedEdge * | getDirEdge (Node *fromNode) |
Returns the DirectedEdge that starts from the given node, or null if the node is not one of the two nodes associated with this Edge. | |
Node * | getOppositeNode (Node *node) |
If node is one of the two nodes associated with this Edge, returns the other node; otherwise returns null. | |
Public Member Functions inherited from geos::planargraph::GraphComponent | |
virtual bool | isVisited () const |
Tests if a component has been visited during the course of a graph algorithm. | |
virtual void | setVisited (bool p_isVisited) |
Sets the visited flag for this component. | |
virtual bool | isMarked () const |
Tests if a component has been marked at some point during the processing involving this graph. | |
virtual void | setMarked (bool p_isMarked) |
Sets the marked flag for this component. | |
Protected Attributes | |
std::vector< DirectedEdge * > | dirEdge |
The two DirectedEdges associated with this Edge. | |
Protected Attributes inherited from geos::planargraph::GraphComponent | |
bool | isMarkedVar |
Variable holding ''marked'' status. | |
bool | isVisitedVar |
Variable holding ''visited'' status. | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const Node &) |
Print a Node. | |
Additional Inherited Members | |
Static Public Member Functions inherited from geos::planargraph::GraphComponent | |
template<typename T > | |
static void | setVisited (T start, T end, bool visited) |
Sets the Visited state for the elements of a container, from start to end iterator. | |
template<typename T > | |
static void | setVisitedMap (T start, T end, bool visited) |
Sets the Visited state for the values of each map container element, from start to end iterator. | |
template<typename T > | |
static void | setMarked (T start, T end, bool marked) |
Sets the Marked state for the elements of a container, from start to end iterator. | |
template<typename T > | |
static void | setMarkedMap (T start, T end, bool marked) |
Sets the Marked state for the values of each map container element, from start to end iterator. | |
Represents an undirected edge of a PlanarGraph.
An undirected edge in fact simply acts as a central point of reference for two opposite DirectedEdge.
Usually a client using a PlanarGraph will subclass Edge to add its own application-specific data and methods.
|
inline |
Constructs a Edge whose DirectedEdges are not yet set.
Be sure to call setDirectedEdges(DirectedEdge* de0, DirectedEdge* de1)
|
inline |
Constructs an Edge initialized with the given DirectedEdges.
For each DirectedEdge: sets the Edge, sets the symmetric DirectedEdge, and adds this Edge to its from-Node.
DirectedEdge * geos::planargraph::Edge::getDirEdge | ( | int | i | ) |
Returns one of the DirectedEdges associated with this Edge.
i | 0 or 1 |
void geos::planargraph::Edge::setDirectedEdges | ( | DirectedEdge * | de0, |
DirectedEdge * | de1 | ||
) |
Initializes this Edge's two DirectedEdges.
For each DirectedEdge: