Closed jo-mueller closed 1 year ago
Just tried on a different machine where it works. Package configuration:
napari: 0.4.15
Platform: Windows-10-10.0.22000-SP0
Python: 3.9.12 (main, Apr 4 2022, 05:22:27) [MSC v.1916 64 bit (AMD64)]
Qt: 5.12.9
PyQt5: 5.12.3
NumPy: 1.22.4
SciPy: 1.8.1
Dask: 2022.6.1
VisPy: 0.9.6
OpenGL:
- GL version: 4.6.0 - Build 26.20.100.7985
- MAX_TEXTURE_SIZE: 16384
Screens:
- screen 1: resolution 1920x1080, scale 1.0
Plugins:
- console: 0.0.4
- napari-assistant: 0.3.8
- napari-process-points-and-surfaces: 0.3.1
- napari-segment-blobs-and-things-with-membranes: 0.2.22
- napari-stress2: 0.0.15
- napari-time-slicer: 0.4.8
- napari-tools-menu: 0.1.15
- napari_skimage_regionprops1: 0.5.2
- napari_skimage_regionprops2: 0.5.2
- ome-types: 0.3.0
- scikit-image: 0.4.15
- svg: 0.1.6
Thanks for the report @jo-mueller interesting! @brisvag might have some insight here - any ideas why the face normals wouldn't always be present on the layer?
Yup, found the issue: when I added normals tot he surface layer, I allowed setting them by passing either a SurfaceNormals
model or a dict
. However, I didn't implement the property to autoconvert to SurfaceNormals
, so if you pass a dict, you end up with a dict on the layer object... which then breaks when later it is assumed to be a dict :P
Here's a PR with fix: napari/napari#5501
Until this gets merge and released, you may be able to fix it by passing the right object to it:
from napari.layers.surface.normals import SurfaceNormals
my_dict_of_normals = {'face'=...}
viewer.add_surface(..., normals=SurfaceNormals(**my_dict_of_normals))
But I'm not sure if this will fix how napari animation handles it.
FYI, @brisvag 's PR (https://github.com/napari/napari/pull/5501) does resolve this issue with recording animations of Surface
s for me.
Merged the PR. This will is will be fixed with napari>0.4.17
.
Hi napari-animators,
I am receiving an error when using napari-animation to render a 4D surface (25 timepoints), but the rendering usually stops after writing the first one or two frames. I've played a bit with the frames (e.g., different ease values) but to no avail.
This is the full traceback:
Here's my package information:
I'm unfortunately not able to provide the data I used to reproduce :/