Expand description
Bridge between the pure-Rust kernel (which works on Tri = [[f64;3];3]) and
ifc-lite’s Mesh (f32 positions/normals/indices). subtract/union/
intersection here are what the ClippingProcessor seam calls.
Enums§
- Batch
Subtract - What
subtract_manymade of a cutter group.
Functions§
- intersection
a ∩ bas aMesh.- intersection_
tris a ∩ bas the kernel’s own exact f64 triangles, WITHOUT theMeshround-trip.- mesh_
to_ tris Mesh→ the kernel’s triangle list (f32 → f64, snapped to the reconcile grid). Panic-free: an out-of-range index OR a non-finite (NaN/Inf) coord drops that triangle rather than indexing past the end or crashingBigRational::from_floatdeep in the predicates (the two empirically-found reachable panic sites).- subtract
host − cutteras aMesh.- subtract_
many host − (∪ cutters)as aMesh— the batched void-group subtract.- tris_
to_ mesh - The kernel’s triangle list → a
Mesh(per-face flat normals, f64 → f32). - union
a ∪ bas aMesh.- union_
many - Retain the existing mutually reconciled N-ary union. Cutter consumers validate this result before deciding whether another candidate is needed.
- union_
with_ conformity - Like
union, but also reports arrangement conformity (unrecovered == 0). Diagnostics only (#3353);union()computes and discards this same signal.