Skip to main content

Module perspective

Module perspective 

Source
Expand description

Conformance checks for providers that draw perspective views (ADR 0107).

The base suites cannot grow a field (ConformanceReport is exhaustive), so perspective has a suite of its own, as the region suite does for section requests (ADR 0091). The claim is inferred from supports_projection, never from probing: a provider that answers false for ViewProjection::Perspective does not claim it, and must then refuse a valid perspective request with Unsupported or UnsupportedInput, so that a registry can fall back past it. A provider that answers true claims it, and the suite then draws the perspective fixtures (a box, a box cut by the near plane, an eye inside a box, an exact boundary, an edge along the eye ray, an eye inside an edge-on triangle) and checks the drawing and the refusal of a bad near depth. Hidden-line fixtures exist; the visible-face claim has none yet and fails closed with PerspectiveConformanceFailure::ClaimUnverifiable until they land.

Structs§

PerspectiveConformanceReport
Result of PerspectiveConformanceSuite.
PerspectiveConformanceSuite
The perspective conformance suite for MeshHiddenLines and MeshVisibleFaces.

Enums§

PerspectiveConformanceFailure
One failure of the perspective suite.