geos::noding::SegmentNodeList Class Reference

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

`#include <SegmentNodeList.h>`

## Public Types

using | container = decltype(nodeMap)
using | iterator = container::iterator
using | const_iterator = container::const_iterator

## Public Member Functions

| SegmentNodeList (const SegmentNodeList &other)=delete
SegmentNodeList & | operator= (const SegmentNodeList &rhs)=delete
| SegmentNodeList (const NodedSegmentString &newEdge, bool p_constructZ, bool p_constructM)
const NodedSegmentString & | getEdge () const
bool | getConstructZ () const
bool | getConstructM () const
template<typename CoordType>
void | add (const CoordType &intPt, std::size_t segmentIndex)
size_t | size () const
| Return the number of nodes in this list.
iterator | begin ()
const_iterator | begin () const
iterator | end ()
const_iterator | end () const
void | addEndpoints ()
void | addSplitEdges (std::vector< SegmentString * > &edgeList)
void | addSplitEdges (std::vector< SegmentString * > *edgeList)
std::unique_ptr< geom::CoordinateSequence > | getSplitCoordinates ()

## Friends

std::ostream & | operator<< (std::ostream &os, const SegmentNodeList &l)

## Detailed Description

A list of the SegmentNode present along a NodedSegmentString.

## Member Function Documentation

## add()

template<typename CoordType>

void geos::noding::SegmentNodeList::add | ( | const CoordType & | intPt,
|  | std::size_t | segmentIndex )

inline

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

Parameters

  intPt | the intersection Coordinate, will be copied
  segmentIndex |

## addEndpoints()

void geos::noding::SegmentNodeList::addEndpoints | ( |  | ) |

Adds entries for the first and last points of the edge to the list

## addSplitEdges()

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

References addSplitEdges().

Referenced by addSplitEdges().

## getSplitCoordinates()

std::unique_ptr< geom::CoordinateSequence > geos::noding::SegmentNodeList::getSplitCoordinates | ( |  | ) |

Gets the list of coordinates for the fully noded segment string, including all original segment string vertices and vertices introduced by nodes in this list. Repeated coordinates are collapsed.

Returns
  an array of Coordinates

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

- SegmentNodeList.h