- Add
convert_units
script. To install, usepip install lacecore[cli]==3.0.0a3
.
- Support NumPy 1.24+
- Allow any version of numpy
- Test in Python 3.9
- Support polliwog 3.0.0 prereleases.
- Revert previous change. This version does not support polliwog 3.0.0 prereleases.
- Support polliwog 3.0.0 prereleases.
- GroupMap: Fix
defragment()
.
- GroupMap: Add
defragment()
andto_dict()
methods.
check_arity()
andcheck_indices()
: Add to public interface.
- Improve
.sliced_by_plane()
:- Slice a submesh by passing
only_for_selection
- Slice by several planes at once
- Preserve
face_groups
when slicing
- Slice a submesh by passing
- Selection: Add
generate_masks()
method - Selection: Improve error message for
.pick_face_groups()
on meshes without face groups. - Upgrade to polliwog >= 2.1.0.
- Add
.face_normals()
method.
- Mesh constructor requires face indices to have dtype
np.int64
. - Add
lacecore.FACE_DTYPE
property. - Upgrade to pollliwog >= 2.0.0.
While this restriction may be a little inconvenient for the caller, it improves interoperability and performance, simplifies the implementation, and produces more predictable return values. It's recommended that applications using lacecore store all face indices using this dtype.
- Add
sliced_by_plane()
method. - Upgrade to polliwog >= 1.1.0.
- Upgrade to polliwog >= 1.0.0 and vg >= 2.0.0.
- Upgrade to polliwog 1.0.0b14 and vg >= 1.11.1.
- Bump tinyobjloader to work around an issue in Poetry. Poetry will not install dependency versions like 2.0.0rc9.dev0.
- Upgrade to polliwog 1.0.0b13.
- Selection: add
pick_vertices_of_face_groups()
method.
- Temporarily use the Curvewise fork of tinyobjloader.
- Add
faces_triangulated()
method. - Correctly preserve groups when reindexing faces.
- Upgrade to tinyobjloader 2.0.0rc8.
- Add
load_obj_string()
function. - Upgrade to tinyobjloader 2.0.0rc7.
- Ensure faces have integral dtype.
- obj: Add support for triangulating mixed arities.
- Upgrade to tinyobjloader 2.0.0rc6.
- Upgrade to polliwog 1.0.0b10.
- Upgrade to polliwog 1.0.0b8.
- Remove
lacecore.shapes.rectangle()
.
- Optional OBJ loading with
pip install lacecore[obj]
. - Add transform methods.
- Add group selection.
- Add
apex()
method. - Add
vertex_centroid
andbounding_box
properties.
- Pass through
face_groups
when returning a new mesh. - Reject invalid
point
from selection methods. - Avoid scrambling correspondence with inconsistent triangulation.
Initial release.