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 NodedSegmentStringgetEdge () const
SegmentNodeadd (const geom::Coordinate &intPt, size_t segmentIndex)
SegmentNodeadd (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: