16 #ifndef GEOS_PLANARGRAPH_NODE_H
17 #define GEOS_PLANARGRAPH_NODE_H
19 #include <geos/export.h>
21 #include <geos/planargraph/GraphComponent.h>
22 #include <geos/planargraph/DirectedEdgeStar.h>
23 #include <geos/geom/Coordinate.h>
27 namespace planargraph {
34 namespace planargraph {
45 class GEOS_DLL Node:
public GraphComponent {
52 DirectedEdgeStar* deStar;
56 friend std::ostream&
operator << (std::ostream& os,
const Node&);
65 static std::vector<Edge*>* getEdgesBetween(Node* node0,
69 Node(
const geom::Coordinate& newPt)
73 deStar =
new DirectedEdgeStar();
87 Node(geom::Coordinate& newPt, DirectedEdgeStar* newDeStar)
143 return deStar->getIndex(edge);
149 std::ostream&
operator<<(std::ostream& os,
const Node& n);
158 #endif // GEOS_PLANARGRAPH_NODE_H
Represents a directed edge in a PlanarGraph.
Definition: planargraph/DirectedEdge.h:45
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:24
std::size_t getDegree() const
Returns the number of edges around the Node associated with this DirectedEdgeStar.
Definition: planargraph/DirectedEdgeStar.h:98
A sorted collection of DirectedEdge which leave a Node in a PlanarGraph.
Definition: planargraph/DirectedEdgeStar.h:42
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:81
std::ostream & operator<<(std::ostream &, const DirectedEdge &)
Output operator.
Represents an undirected edge of a PlanarGraph.
Definition: planargraph/Edge.h:53