Skip to content

axiolid-refine ​

Mesh refinement, smoothing, isotropic remeshing, hole filling, fairing and subdivision surfaces.

Latest release0.3.4 (2026-11-07)
crates.ioaxiolid-refine
Layeralgorithms (algorithm.discrete)
API documentationrustdoc · docs.rs
Sourcecrates/algorithms/discrete/refine/

Overview ​

Mesh refinement and Laplacian smoothing with bounded, reported deviation. Refinement splits triangles; when the source surface of a tessellated B-rep is supplied, each new vertex is placed on that surface instead of at the edge midpoint, so refinement converges on the real geometry rather than subdividing the facets. Smoothing keeps boundary vertices bit-identical by default. Isotropic remeshing (remesh) splits, collapses, flips and relaxes towards one target edge length on a halfedge mesh, keeping boundary and sharp feature lines exactly and projecting every free vertex back onto the input; its report measures how close the result came. Remeshing sizes edges uniformly, not by curvature. On a HalfedgeMesh the crate also fills holes (a minimum-dihedral triangulation, refined to the surrounding density and faired with a biharmonic solve), fairs chosen vertices, and subdivides with the Loop and Catmull-Clark schemes, including their limit positions. It does not reduce triangle counts (see axiolid-decimate).

Depends on ​

Changes ​

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

Added ​

  • The package now ships LICENSE and LICENSE-COMMERCIAL (symlinks to the repository root), so the licence texts travel with the archive (#358).

Full history: crates/algorithms/discrete/refine/CHANGELOG.md

Released under the Mozilla Public License 2.0.