GEOS 3.13.1
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
SegmentNodeListoperator= (const SegmentNodeList &rhs)=delete
 SegmentNodeList (const NodedSegmentString &newEdge, bool p_constructZ, bool p_constructM)
const NodedSegmentStringgetEdge () 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::CoordinateSequencegetSplitCoordinates ()

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
intPtthe 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: