GEOS  3.8.0dev
Public Member Functions | Protected Attributes | List of all members
geos::noding::SinglePassNoder Class Referenceabstract

#include <SinglePassNoder.h>

Inheritance diagram for geos::noding::SinglePassNoder:
geos::noding::Noder geos::noding::MCIndexNoder geos::noding::SimpleNoder

Public Member Functions

 SinglePassNoder (SegmentIntersector *nSegInt=nullptr)
virtual void setSegmentIntersector (SegmentIntersector *newSegInt)
void computeNodes (std::vector< SegmentString * > *segStrings) override=0
std::vector< SegmentString * > * getNodedSubstrings () const override=0

Protected Attributes

 Externally owned.

Detailed Description

Base class for Noders which make a single pass to find intersections. This allows using a custom SegmentIntersector (which for instance may simply identify intersections, rather than insert them).

Last port: noding/ rev. 1.3 (JTS-1.7)

TODO: Noder inheritance (that's just an interface!)

Member Function Documentation

void geos::noding::SinglePassNoder::computeNodes ( std::vector< SegmentString * > *  segStrings)
overridepure virtual

Computes the noding for a collection of SegmentStrings.

segStringsa collection of SegmentStrings to node

Implements geos::noding::Noder.

Implemented in geos::noding::MCIndexNoder, and geos::noding::SimpleNoder.

std::vector<SegmentString*>* geos::noding::SinglePassNoder::getNodedSubstrings ( ) const
overridepure virtual

Returns a Collection of fully noded SegmentStrings. The SegmentStrings have the same context as their parent.

a Collection of SegmentStrings

Implements geos::noding::Noder.

Implemented in geos::noding::MCIndexNoder, and geos::noding::SimpleNoder.

virtual void geos::noding::SinglePassNoder::setSegmentIntersector ( SegmentIntersector newSegInt)

Sets the SegmentIntersector to use with this noder. A SegmentIntersector will normally add intersection nodes to the input segment strings, but it may not - it may simply record the presence of intersections. However, some Noders may require that intersections be added.


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