Represents a planar graph of edges that can be used to compute a polygonization, and implements the algorithms to compute the EdgeRings formed by the graph.
More...
|
|
| PolygonizeGraph (const geom::GeometryFactory *newFactory) |
| | Create a new polygonization graph.
|
| |
|
| ~PolygonizeGraph () override |
| | Destroy a polygonization graph.
|
| |
| void | addEdge (const geom::LineString *line) |
| | Add a LineString forming an edge of the polygon graph.
|
| |
| void | getEdgeRings (std::vector< EdgeRing * > &edgeRingList) |
| | Computes the EdgeRings formed by the edges in this graph.
|
| |
| void | deleteCutEdges (std::vector< const geom::LineString * > &cutLines) |
| | Finds and removes all cut edges from the graph.
|
| |
| void | deleteDangles (std::vector< const geom::LineString * > &dangleLines) |
| | Marks all edges from the graph which are "dangles".
|
| |
|
| PlanarGraph () |
| | Constructs a PlanarGraph without any Edges, DirectedEdges, or Nodes.
|
| |
|
Node * | findNode (const geom::Coordinate &pt) |
| | Returns the Node at the given location, or null if no Node was there.
|
| |
|
NodeMap::container::iterator | nodeIterator () |
| | Returns an Iterator over the Nodes in this PlanarGraph.
|
| |
|
NodeMap::container::iterator | nodeBegin () |
| |
|
NodeMap::container::const_iterator | nodeBegin () const |
| |
|
NodeMap::container::iterator | nodeEnd () |
| |
|
NodeMap::container::const_iterator | nodeEnd () const |
| |
| void | getNodes (std::vector< Node * > &nodes) |
| | Returns the Nodes in this PlanarGraph.
|
| |
| std::vector< DirectedEdge * >::iterator | dirEdgeIterator () |
| | Returns an Iterator over the DirectedEdges in this PlanarGraph, in the order in which they were added.
|
| |
|
std::vector< DirectedEdge * >::iterator | dirEdgeBegin () |
| |
|
std::vector< DirectedEdge * >::iterator | dirEdgeEnd () |
| |
|
std::vector< Edge * >::iterator | edgeIterator () |
| | Alias for edgeBegin()
|
| |
| std::vector< Edge * >::iterator | edgeBegin () |
| | Returns an iterator to first Edge in this graph.
|
| |
| std::vector< Edge * >::iterator | edgeEnd () |
| | Returns an iterator to one-past last Edge in this graph.
|
| |
| std::vector< Edge * > * | getEdges () |
| |
| void | remove (Edge *edge) |
| | Removes an Edge and its associated DirectedEdges from their from-Nodes and from this PlanarGraph.
|
| |
| void | remove (DirectedEdge *de) |
| | Removes DirectedEdge from its from-Node and from this PlanarGraph.
|
| |
|
void | remove (Node *node) |
| | Removes a node from the graph, along with any associated DirectedEdges and Edges.
|
| |
|
std::vector< Node * > * | findNodesOfDegree (std::size_t degree) |
| | Returns all Nodes with the given number of Edges around it. The return value is a newly allocated vector of existing nodes.
|
| |
| void | findNodesOfDegree (std::size_t degree, std::vector< Node * > &to) |
| | Get all Nodes with the given number of Edges around it.
|
| |
Represents a planar graph of edges that can be used to compute a polygonization, and implements the algorithms to compute the EdgeRings formed by the graph.
The marked flag on DirectedEdge is used to indicate that a directed edge has be logically deleted from the graph.