Skip to content

axiolid-mesh-boolean-boolmesh ​

boolmesh-backed MeshBoolean provider.

Latest release0.3.7 (2026-11-07)
crates.ioaxiolid-mesh-boolean-boolmesh
Facadeaxiolid feature portable-provider
Layerproviders (provider.mesh)
API documentationrustdoc · docs.rs
Sourcecrates/providers/mesh/boolmesh/

Overview ​

A MeshBoolean provider for closed, outward-oriented triangle meshes: union, intersection, difference, and symmetric difference composed from those. The algorithm is absorbed from the boolmesh crate into a private module (ADR 0014, ADR 0047); this crate adds the conversion, an orientation gate on every input, result checks, and batch overrides (subtract_many fuses disjoint cutters, union_many reduces as a balanced tree). It also offers subtract_boxes_analytic, an opt-in closed-form path for axis-aligned box cutters in an axis-aligned box. Register it with axiolid-dispatch or call it directly.

Design notes ​

  • Results carry attribute channels but no normals; derive normals from the topology you want.
  • The general path is Determinism::Topological. Use the analytic box path when you need byte-identical output across processes.
  • The parallel feature threads inside one solve and is off by default; parallel-batch runs independent union_many pairs concurrently with output identical to the sequential path.

Features ​

Default: none.

FeatureEnables
parallelrayon
parallel-batchrayon

Depends on ​

Changes ​

Latest release, 0.3.7 (2026-11-07):

Added ​

  • The package now ships LICENSE (a symlink to the repository root), so the licence text travels with the archive (#358).

Changed ​

  • The minimum supported Rust version is now 1.99 (was 1.88), and the workspace builds on Rust 1.99.1 (#349).

Full history: crates/providers/mesh/boolmesh/CHANGELOG.md

Released under the Mozilla Public License 2.0.