GEOS: geos::noding::SegmentNodeList Class Reference

Public Types | Public Member Functions | Friends

# geos::noding::SegmentNodeList Class Reference

A list of the SegmentNode present along a NodedSegmentString. More...

`#include <SegmentNodeList.h>`

List of all members.

## 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, size_t segmentIndex)
SegmentNode * | add (const geom::Coordinate *intPt, 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)

## Detailed Description

A list of the SegmentNode present along a NodedSegmentString.

## Member Function Documentation

SegmentNode* geos::noding::SegmentNodeList::add | ( | const geom::Coordinate & | intPt,
|  | size_t | segmentIndex
| ) |  |

Adds an intersection into the list, if it isn't already there. The input segmentIndex is expected to be normalized.

Returns:
  the SegmentIntersection found or added. It will be destroyed at SegmentNodeList destruction time.

Parameters:

  intPt | the intersection Coordinate, will be copied
  segmentIndex |

Referenced by geos::noding::NodedSegmentString::addIntersectionNode().

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).

The documentation for this class was generated from the following file:

- SegmentNodeList.h