Expand description
Certified intersections for linear geometry.
This package exists so a line-query application can compile intersection
logic with a three-package internal closure — axiolid-core,
axiolid-linear, axiolid-predicates — and no curves, surfaces, NURBS,
meshes, B-rep, topology, providers, or execution machinery (ADR 0036).
§Classification, not Option<Point2>
Collapsing the answer to an optional point destroys facts a topology or rule checker needs: crossing, endpoint contact, parallel-disjoint, coincident, collinear-disjoint, and overlap are distinct outcomes and are returned as distinct variants.
§Certified topology
Parallel-versus-coincident and on-segment decisions come from
axiolid-predicates, which escalates to exact arithmetic. The caller’s
axiolid_core::Tolerance governs residual acceptance of the computed
coordinate, never the topological branch.
Structs§
- Tolerance
- Re-exported so a caller can name the required tolerance policy without a
separate dependency on
axiolid-core. Linear and angular tolerance carried with an operation.
Enums§
- Input
Side - Which operand a diagnostic refers to.
- Line
Line Intersection2 - How two unbounded planar lines relate.
- Linear
Intersection Error - Why a linear intersection could not be answered.
- Segment
Segment Intersection2 - How two bounded planar segments relate.
Functions§
- line_
line2 - Classify two unbounded planar lines.
- segment_
segment2 - Classify two bounded planar segments.