GEOS 3.13.1
|
Validates that a collection of SegmentString
s is correctly noded.
More...
#include <FastNodingValidator.h>
Public Member Functions | |
FastNodingValidator (std::vector< noding::SegmentString * > &newSegStrings) | |
bool | isValid () |
Checks for an intersection and reports if one is found. | |
std::string | getErrorMessage () const |
Returns an error message indicating the segments containing the intersection. | |
void | checkValid () |
Checks for an intersection and throws a TopologyException if one is found. |
Validates that a collection of SegmentString
s is correctly noded.
Indexing is used to improve performance. By default validation stops after a single non-noded intersection is detected. Alternatively, it can be requested to detect all intersections by using setFindAllIntersections(boolean).
The validator does not check for topology collapse situations (e.g. where two segment strings are fully co-incident).
The validator checks for the following situations which indicated incorrect noding:
The client may either test the isValid()
condition, or request that a suitable TopologyException be thrown.
void geos::noding::FastNodingValidator::checkValid | ( | ) |
Checks for an intersection and throws a TopologyException if one is found.
TopologyException | if an intersection is found |
std::string geos::noding::FastNodingValidator::getErrorMessage | ( | ) | const |
Returns an error message indicating the segments containing the intersection.
|
inline |
Checks for an intersection and reports if one is found.