Skip to main content

Module validity

Module validity 

Source
Expand description

OVL6.T4 — is_valid for rings and polygons.

Mirrors boost/geometry/algorithms/is_valid.hpp and the failure taxonomy in boost/geometry/algorithms/validity_failure_type.hpp. A geometry is valid when it satisfies the OGC simple-feature rules: finite, in-range coordinates; enough points; a closed boundary; no spikes; no self-intersections; the expected ring orientation; and, for polygons, every interior ring covered by the exterior.

Polygon-level ring pairs and distinct multi-polygon members are checked after their individual rings pass, including nested holes, disconnected interiors, and intersecting member interiors.

Scope: Ring, Polygon, and MultiPolygon validation. Coordinate validity (NaN / infinity) is checked because the robustness gate depends on finite input.

is_valid preserves this crate’s strict behavior for compatibility. is_valid_with accepts ValidityOptions, including ValidityOptions::BOOST_DEFAULT which permits consecutive repeated points like policies/is_valid/default_policy.hpp:26-61.

Structs§

ValidityOptions
Behavior switches applied by is_valid_with.

Enums§

ValidityFailure
Why a geometry failed is_valid_ring / is_valid_polygon.

Functions§

is_valid
Validate an areal geometry through its public geometry-kind tag.
is_valid_polygon
Validate a polygon: its exterior ring (with exterior orientation expectations), each interior ring (with interior orientation expectations), and all exterior/interior and interior/interior ring-pair topology constraints.
is_valid_polygon_with
Validate one polygon with explicit validity behavior.
is_valid_ring
Validate a single ring.
is_valid_ring_with
Validate one ring with explicit validity behavior.
is_valid_with
Validate an areal geometry with explicit validity behavior.
validity_reason
Return Boost’s human-readable reason for strict validation.
validity_reason_with
Return Boost’s human-readable reason using explicit validity behavior.