GEOS
3.3.3
|
A list of the SegmentNode present along a NodedSegmentString. More...
#include <SegmentNodeList.h>
Public Types | |
typedef std::set< SegmentNode *, SegmentNodeLT > | container |
typedef container::iterator | iterator |
typedef container::const_iterator | const_iterator |
Public Member Functions | |
SegmentNodeList (const NodedSegmentString *newEdge) | |
SegmentNodeList (const NodedSegmentString &newEdge) | |
const NodedSegmentString & | getEdge () const |
SegmentNode * | add (const geom::Coordinate &intPt, std::size_t segmentIndex) |
SegmentNode * | add (const geom::Coordinate *intPt, std::size_t segmentIndex) |
std::set< SegmentNode *, SegmentNodeLT > * | getNodes () |
size_t | size () const |
Return the number of nodes in this list. | |
container::iterator | begin () |
container::const_iterator | begin () const |
container::iterator | end () |
container::const_iterator | end () const |
void | addEndpoints () |
void | addSplitEdges (std::vector< SegmentString * > &edgeList) |
void | addSplitEdges (std::vector< SegmentString * > *edgeList) |
Friends | |
std::ostream & | operator<< (std::ostream &os, const SegmentNodeList &l) |
A list of the SegmentNode present along a NodedSegmentString.
SegmentNode* geos::noding::SegmentNodeList::add | ( | const geom::Coordinate & | intPt, |
std::size_t | segmentIndex | ||
) |
Adds an intersection into the list, if it isn't already there. The input segmentIndex is expected to be normalized.
intPt | the intersection Coordinate, will be copied |
segmentIndex |
void geos::noding::SegmentNodeList::addEndpoints | ( | ) |
Adds entries for the first and last points of the edge to the list
void geos::noding::SegmentNodeList::addSplitEdges | ( | std::vector< SegmentString * > & | edgeList | ) |
Creates new edges for all the edges that the intersections in this list split the parent edge into. Adds the edges to the input list (this is so a single list can be used to accumulate all split edges for a Geometry).