Lagrange Release v6.11.0
Infrastructure
- Migrate from FetchContent to CPM for dependency retrieval
- Update Catch2 to v3.2.1
- Remove unused testing data
- Cleanup attribute folder
- Minor compilation fix in IO and UI modules
- Add github actions to build and deploy open-source wheel. The open-source Lagrange python package can be installed via:
pip install lagrange-open
Core module
SurfaceMeshsupport:- Implemented
shrink_to_fit()method for SurfaceMesh and Attribute classes - Add SurfaceMesh support for
remove_isolated_vertices() - Add SurfaceMesh support for
compute_dihedral_angle()andcompute_edge_lengths() - Add SurfaceMesh support for
weld_indexed_attribute()- Deprecate
condense_indexed_attribute() - Deprecate
unify_corner_indices()
- Deprecate
- Implemented
IO module
- Add automatic file format detection in load/save from stream
- Refactor glTF loader to load attributes in their native type
- Remove normalization when saving color attributes in PLY format
- Avoid hard coded types when saving PLY mesh
Python module
- Open-source package
lagrange-opennow installable via pip - Connected the Lagrange logger with the Python logging module. It is now possible to set the Lagrange log level via Python.
- Added
mesh_to_stringandstring_to_meshfunction to save/load a mesh to memory. - Improve python binding of
SurfaceMesh.create_attributeto accept Numpydtypeand not require initial values. - Added automatic stub file generation, providing autocompletion in IDE like Visual Studio Code, and enabling static type analysis via MyPy.