Skip to content

Lagrange Release v6.39.0

Choose a tag to compare

@jdumas jdumas released this 14 Nov 18:22
· 13 commits to main since this release
ee6f7f0

Infrastructure

  • πŸ—οΈ Compilation fixes for Xcode 26
  • πŸ—οΈ Fix CMake sanitizer setup for MSVC
  • πŸ“Œ Update earcut.hpp dependency to f36ced7
  • πŸ“Œ Update cpptrace to 1.0.4
  • πŸ“Œ πŸ› Update PoissonRecon dependency to fix a memory allocation bug

Core Module

  • 🎨 Add overload to SurfaceMesh::delete_attribute to accept id as input

IO Module

  • πŸ› Throw error when saving float/double texture to glTF file
  • πŸ“– Add explicit warning when loading glTF without explicit stitching behavior
  • 🎨 Add new LoadOptions::quiet to silence IO related log messages
  • 🎨 Update STL mesh load to not stitch vertices by default for consistency with other formats

Solver Module

  • ✨ Add support for Spectra-based sparse eigenvalue solver
    • [generalized_]selfadjoint_eigen_[largest|smallest]() in C++
    • lagrange.solver.eigsh() in Python (follows a similar API to scipy.linalg.eigsh())

Texproc Module

  • πŸ› Fix out-of-bound access in rasterization code
  • πŸ› Add checks to ensure number of channels consistency
  • 🐍 Update texture_from_multiview.py to accept list of render images + ensure output uses .exr
  • πŸ› Fix vertical flip in geodesic_dilation code introduced in v6.38.0
  • πŸ› Fix image transpose issue in Python bindings
  • 🐍 Add geodesic_dilation.py demo

Geodesic Module

  • ✨ New geodesic module to compute single-source and point-to-point geodesic distance
    • Added GeodesicEngine[...] class for repeated computation
    • Choice of algorithm between DGPC, MMP and Heat
    • Two methods available: single_source_geodesic() and point_to_point_geodesic()

Polyddg Module

✨ New polyddg module that implements most of the operators from this paper:

De Goes, F., Butts, A., & Desbrun, M. (2020).
Discrete differential operators on polygonal meshes.
ACM Transactions on Graphics (TOG), 39(4), 110-1.

Documentation

  • πŸ“– Docstring updates for scene module
  • πŸ“– Update voxelize_mesh example code to read/write .vdb files
  • πŸ“– Fixed typos and grammar in comments with Copilot

Python Bindings

  • πŸ“Œ Updated scikit-build core to 0.11.6
  • πŸ“Œ Updated sphinx and autoapi
  • πŸ—οΈ Set upper-bound to Python <3.14 due to nanobind uncertainty
  • πŸ“– Fixed generated Sphinx documentation due to refactored stub files

Full Changelog: v6.38.0...v6.39.0