Releases: mikedh/trimesh
Release 4.9.0
Release: Unit Hints (#2468)
- Be more flexible in getting unit hints from file names since it was a
little silly that20mm-xyz-cubedid not resolve asmm. - Apply actions
guidance
updating to use themacos-15-intelimage. - test and fix
trimesh.scene.lighting.autolightcrashing on empty
scenes by checkingscene.bounds is None - release #2470
- add a note about whether or not we should apply the fix from #2457 to
PBRMaterial.to_simpleusing the same conversion function for the
linearbaseColorFactorto RGB, but don't actually apply the change as
it seems likely to be a source of user confusion. - add a
Path2D.convex_hullto match every other geometry method. - update
test_scene.pyto pytest style - release #2472
- release #2473
- Add in another
Literaltype forVoxelizationMethodsTyperather
than a "loose string".
Release 4.8.3
Release: Partially update notebook viewer (#2465)
- For the notebook viewer this updates the version of three.js from 115
-> 140 and rebuilds thetrimesh.resources.viewer.zipartifact. The
latest version of three.js is 180 but would require re-factoring the
notebook viewer which probably should be done at some point. - releases #2464
- add literals types instead of loose strings for
BooleanEngineType,
BooleanOperationType, andGraphEngineType, and apply them to boolean
and graph functions that allow differentengineoptions. - pass through
repairkeyword argument fromTrimesh.splitto
partially fix #2460 - deprecate
trimesh.viewer.widgetsinceglooeyhasn't been updated
since 2021, and the widget module isn't tested. - stop running
process=Trueon the outputs of manifold3d to fix #2466 - adds additional test case to hit the iteration path of
trimesh.path.polygons.sample_polygon - stop double-checking
is_volumein mesh booleans to fix #2458 - Adds additional documentation recommending "a la carte" dependencies
for people freezing, i.e.trimesh scipyvstrimesh[easy]
Release 4.8.2
Release: Docstrings + Docker UV (#2455)
- update docstring for
linear_color_map - release #2453
- switch docker images to use
uvto install Python, and add an alias
forpip->uv pipso the images continue to behave similarly. - remove
Trimesh.smoothed, which has been long-deprecated and
scheduled for removal no earlier than March 2024.
Trimesh.smooth_shadedhas been recommended for the entire deprecation
period via a warning. - fix #2456
- this fixes a crash on a PLY with both edge data (i.e.
trimesh.Path3D) and face data (Trimesh). We now load both into the
kwargs, but theexchangeentry point picks only the faces. It should
probably be returning aScenewhich has both the mesh and path. - release #2457
- also refactor local functions
lin2srgb/srgb2lin->
trimesh.visual.color.linear_to_srgband add a round-trip test - in the docs build update all locked versions
Release 4.8.1
Release 4.8.0
Release: PathSample Fixes + Viridis (#2444)
- try to fix #2438
- release #2441
- release #2449 which makes
viridisthe default color map in
trimesh.visual.color.interpolateand enables linear interpolation with
more than two values intrimesh.visual.color.linear_color_map. This
adds a 20kb JSON copy of the lookup table for viridis rather than
depending onmatplotlibto avoid the 50mb of added dependencies. Fixes
#2446 - adds ability to
gzipfiles intrimesh.resources.get_json.gzip
won the decompress-speed benchmark by a fair bit on my machine compared
tobz2andlzmaalthough it had worse compression.
Release 4.7.4
Hotfix: Remove a warning (#2440)
GLTF files with a node named "world" were warning, which is not
necessary. This changes the warning to a debug.
Release 4.7.3
Release: Parent Loggers + Numpy Dtype Hotfix (#2430)
In trimesh.util.attach_to_log(only_parent=True) if there exist loggers
for project, project.other, project.other2, this will only attach
to project. By default it is off so it shouldn't change upstream
behavior.
We should also probably be doing instead of from .util import log,
log = getLogger(__name__) everywhere.
Release Notes
- Adds the parent logging behavior
- latest numpy dtypes now show up as
|u8instead of<u8, which we
need to strip for the GLTF lookup table. - slightly janky fix for #2419 which at least preserves the vertex
colors, but should probably be refactored to always store them in
vertex_attributes. That would be a large change and I'm not sure it's
possible to do without breaking the API. - release #2432
Release 4.7.1
Release 4.7.0
Release: Remove GMSH (#2422)
Trimesh's interface to gmsh has been scheduled for removal and has been
printing this warning for more than a year:
trimesh.interfaces.gmshis deprecated and will be removed January
2025! There are many gmsh options on PyPi:scikit-gmshgmsh
pygmshgmsh-sdk, users should pick one of those and use it directly.
If STEP loading is the only thing needed you may wantpip install cascadiowhich uses OpenCASCADE more directly and will immediately
enable STEP as a loadable format in trimesh.
Changes in this release:
Release 4.6.13
Release: Layer Filter For Path.copy (#2418)
- add and test
path.copy(layers={1, 2})to only copy particular
layers. - add the note about signed angles discussed in #2416
- add a
trimesh.primitives.Extrusion(..., mid_plane: bool)option as a
helper to produce extrusions that are centered at the origin. - convert
test_extrudeandtest_primitivesto pytest style, and
remove the outdated test skip iftriangleisn't installed. - fix and test units on 3MF imports, which were being stomped by the
metadata = Nonekeyword argument. - remove unused
trimesh.exchange.gltf._mesh_to_materialsfunction. - release #2420