GEOS
3.8.0dev

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.)