GEOS 3.11.1
|
Validates that the result of an overlay operation is geometrically correct within a determined tolerance. More...
#include <OverlayResultValidator.h>
Public Member Functions | |
OverlayResultValidator (const geom::Geometry &geom0, const geom::Geometry &geom1, const geom::Geometry &result) | |
bool | isValid (OverlayOp::OpCode opCode) |
geom::Coordinate & | getInvalidLocation () |
Static Public Member Functions | |
static bool | isValid (const geom::Geometry &geom0, const geom::Geometry &geom1, OverlayOp::OpCode opCode, const geom::Geometry &result) |
Validates that the result of an overlay operation is geometrically correct within a determined tolerance.
Uses fuzzy point location to find points which are definitely in either the interior or exterior of the result geometry, and compares these results with the expected ones.
This algorithm is only useful where the inputs are polygonal.
This is a heuristic test, and may return false positive results (I.e. it may fail to detect an invalid result.) It should never return a false negative result, however (I.e. it should never report a valid result as invalid.)