21#include <geos/export.h>
23#include <geos/operation/buffer/RightmostEdgeFinder.h>
30#pragma warning(disable: 4251)
64 std::vector<geomgraph::DirectedEdge*> dirEdgeList;
66 std::vector<geomgraph::Node*> nodes;
86 void add(
geomgraph::Node* node, std::vector<geomgraph::Node*>* nodeStack);
88 void clearVisitedEdges();
103 bool contains(std::set<geomgraph::Node*>& nodes,
geomgraph::Node* node);
107 friend std::ostream& operator<< (std::ostream& os,
const BufferSubgraph& bs);
113 std::vector<geomgraph::DirectedEdge*>* getDirectedEdges();
115 std::vector<geomgraph::Node*>* getNodes();
132 void computeDepth(
int outsideDepth);
172std::ostream& operator<< (std::ostream& os,
const BufferSubgraph& bs);
178 return rightMostCoord;
181inline std::vector<geomgraph::Node*>*
182BufferSubgraph::getNodes()
187inline std::vector<geomgraph::DirectedEdge*>*
188BufferSubgraph::getDirectedEdges()
193bool BufferSubgraphGT(BufferSubgraph* first, BufferSubgraph* second);
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:217
An Envelope defines a rectangulare region of the 2D coordinate plane.
Definition Envelope.h:59
A directed EdgeEnd.
Definition geomgraph/DirectedEdge.h:42
The node component of a geometry graph.
Definition geomgraph/Node.h:59
A connected subset of the graph of DirectedEdge and geomgraph::Node.
Definition BufferSubgraph.h:60
geom::Envelope * getEnvelope()
Computes the envelope of the edges in the subgraph. The envelope is cached after being computed.
void findResultEdges()
Find all edges whose depths indicates that they are in the result area(s).
int compareTo(BufferSubgraph *)
BufferSubgraphs are compared on the x-value of their rightmost Coordinate.
void create(geomgraph::Node *node)
Creates the subgraph consisting of all edges reachable from this node.
geom::Coordinate * getRightmostCoordinate()
Gets the rightmost coordinate in the edges of the subgraph.
Definition BufferSubgraph.h:176
A RightmostEdgeFinder find the geomgraph::DirectedEdge in a list which has the highest coordinate,...
Definition RightmostEdgeFinder.h:46
Basic namespace for all GEOS functionalities.
Definition geos.h:39