tag:github.com,2008:https://github.com/polydera/trueform/releases Release notes from trueform 2026-02-07T17:40:01Z tag:github.com,2008:Repository/1137652741/v0.5.0 2026-02-07T19:35:09Z v0.5.0 <h3>Mesh Registration</h3> <ul> <li><strong>ICP alignment</strong> (<code>fit_icp_alignment</code>): Iterative Closest Point registration with point-to-point and point-to-plane modes, configurable convergence criteria, and correct transform composition for all source/target combinations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3910028780" data-permission-text="Title is private" data-url="https://github.com/polydera/trueform/issues/9" data-hovercard-type="issue" data-hovercard-url="/polydera/trueform/issues/9/hovercard" href="https://github.com/polydera/trueform/issues/9">#9</a>)</li> <li><strong>40× faster than VTK, 93× faster than libigl</strong> at 1M polygons - TrueForm's random subsampling maintains near-constant time regardless of mesh size</li> </ul> <h3>Mesh Processing</h3> <ul> <li><strong>Taubin smoothing</strong> (<code>taubin_smoothed</code>): λ-μ smoothing for mesh fairing without shrinkage</li> <li><strong>Embedded intersection curves</strong> (<code>embedded_intersection_curves</code>): Extract mesh-mesh intersection curves embedded in the first mesh, useful for cutting guides and contact visualization (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3909910520" data-permission-text="Title is private" data-url="https://github.com/polydera/trueform/issues/8" data-hovercard-type="issue" data-hovercard-url="/polydera/trueform/issues/8/hovercard" href="https://github.com/polydera/trueform/issues/8">#8</a>)</li> </ul> <h3>Interactive Examples</h3> <ul> <li><strong>Mesh registration demo</strong>: Drag to misalign, click to align with OBB + ICP pipeline</li> </ul> <h3>Full API Support</h3> <ul> <li>C++, Python, and VTK bindings for all new features</li> <li>Comprehensive documentation and benchmarks</li> </ul> github-actions[bot] tag:github.com,2008:Repository/1137652741/v0.4.0 2026-02-03T16:45:50Z v0.4.0 <p>v0.4.0: point-to-plane ICP, topology analysis, blender tools</p> <p>Point-to-plane ICP with parallel TSQR least squares solver, converging <br />2-3x faster than point-to-point on smooth surfaces. Tag normals on the <br />target to enable: `target | tf::tag(tree) | tf::tag_normals(normals)`.</p> <p>Topology mesh analysis: is_closed, is_manifold, is_non_manifold, is_open <br />with parallel edge traversal. Python bindings included.</p> <p>Blender plugin tools for boolean operations and curve extraction with <br />undo support and proper mesh conversion utilities.</p> <p>Also: mod_tree benchmarks, min/max_edge_length, parallelized concatenated, <br />VTK double support, laplacian_smoothed python bindings.</p> github-actions[bot] tag:github.com,2008:Repository/1137652741/v0.3.0 2026-01-30T08:02:51Z v0.3.0 <p>v0.3.0: integrate mod_tree for incremental spatial updates</p> <p>Add mod_tree to public API with full support across all spatial operations. <br />mod_tree enables O(delta) updates instead of O(n) rebuilds for interactive <br />applications with frequent local geometry changes.</p> <p>New features: <br />- aabb_mod_tree, obb_mod_tree, obbrss_mod_tree convenience aliases <br />- tree_index_map for managing ID remapping during updates <br />- All spatial queries (distance, intersects, neighbor_search, ray_cast, <br /> gather_ids, search, search_self) work identically with tree and mod_tree <br />- VTK module now uses aabb_mod_tree as its default spatial structure</p> <p>Documentation: <br />- Comprehensive mod_tree usage guide with update patterns <br />- tree_index_map API reference</p> <p>Examples: <br />- Free-form smoothing: interactive mesh smoothing with incremental tree updates <br />- VTK laplacian_smoothing: demonstrates mod_tree integration with VTK</p> <p>Tests: <br />- Systematic mod_tree query tests covering dirty/non-dirty region results</p> github-actions[bot] tag:github.com,2008:Repository/1137652741/v0.2.0 2026-01-28T07:02:12Z v0.2.0 <h2>trueform v0.2.0</h2> <p>Real-time geometric processing. Easy to use, robust on real-world data. <strong><a href="https://trueform.polydera.com/live-examples/boolean" rel="nofollow">Try it live</a></strong>.</p> <p>Spatial queries, mesh booleans, isocontours, topology — at interactive speed on million-polygon meshes. Robust to non-manifold flaps, inconsistent winding, and pipeline artifacts. C++ header-only; Python with NumPy in, NumPy out.</p> <p><strong><a href="https://trueform.polydera.com/cpp/benchmarks" rel="nofollow">Benchmarks</a></strong> — vs CGAL, VTK, libigl, Coal, FCL, nanoflann.</p> <p><strong><a href="https://trueform.polydera.com" rel="nofollow">Documentation</a></strong> — tutorials, examples, and more.</p> <h3>Installation</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="pip install trueform python -m trueform.conan create"><pre>pip install trueform python -m trueform.conan create</pre></div> github-actions[bot] tag:github.com,2008:Repository/1137652741/v0.1.1 2026-01-27T09:05:25Z v0.1.1 <p>v0.1.1: cross-section examples, isobands improvements, build fixes</p> <p>cross-section examples <br />- new live example with WASM, VTK C++, and Python VTK implementations <br />- extracts isocontours and triangulates into filled polygons <br />- interactive plane movement with scroll</p> <p>isobands improvements <br />- make_isobands with return_curves now only returns curves for selected <br /> bands instead of all intersection edges <br />- fixed lifetime bug in segments reindexed() where block_indirect_range <br /> held iterators to temporaries from a lazy mapped_range <br />- examples updated to match cross-section style: single viewport, <br /> semi-transparent mesh, teal colors, fixed plane through centroid</p> <p>triangulation <br />- ear cutter auto-detects and corrects clockwise polygons <br />- added 2D and clockwise polygon tests</p> <p>build <br />- sdist now included in PyPI publish workflow <br />- ninja required for sdist builds</p> github-actions[bot] tag:github.com,2008:Repository/1137652741/v0.1.0 2026-01-26T23:32:39Z v0.1.0 <p>Fix Windows CI and Blender packaging: use py launcher, extract wheel …</p> <p>…directly</p> github-actions[bot]