github K3D-tools/K3D-jupyter v3.1.2
3.1.2

7 hours ago

Fixed

  • voxels(..., xmin=…, xmax=…) was ignored unless bounds was passed too (#541).
  • Integer arrays overflowing an unsigned trait wrapped silently — 256 became an empty voxel, 300 a different colour. They now raise (#545).
  • A vector field reported a unit cube as its bounds, so plot.get_auto_camera() could not frame long arrows (#549).
  • The bundle carried two copies of three.js, so an instanceof across the raster/cinematic boundary could test against the wrong class. Now one, and 264 KB smaller.
  • widget.mjs pointed devtools at a source map no artifact shipped — a guaranteed 404 on every plot.

Thanks to @Arthur031221 for the first three.

Faster

  • import k3d 1002 → 725 ms: VTK is imported when vtk_poly_data is called, not before.
  • ~310 ms off every screenshot; ambient occlusion is skipped where it provably cannot change the image.
  • npm package 13.9 → 3.8 MB unpacked.

Dependencies

three.js 0.185 → 0.186, three-mesh-bvh 0.9.15, katex 0.18.9, webpack 5.111.

three.js #33985 makes diffuse lighting conserve energy — light the specular lobe reflects is no longer also scattered diffusely — so lit surfaces render slightly darker. Measured across the 77 reference images it moved: −3.9 levels on average, and not one brighter.

Don't miss a new K3D-jupyter release

NewReleases is sending notifications on new releases.