morphonets/SNT

Not able to record movie in legacy 3D viewer in SNT

alexyangalexyang opened this issue · 2 comments

Describe the bug
I cannot record the 360 degree movie or freehand movie under legacy 3D viewer of my traced paths
To Reproduce
Steps to reproduce the behavior:

Open file and paths in SNT

  1. Go to '3D' on the SNT v4.1.6 panel
  2. Click on 'Viewer' near the bottom
  3. Scroll down to 'New without image', and click 'apply'
  4. See error (attached error message below), but can still see the 3D viewer
  5. Click on top row 'View' -> record 360 deg rotation
  6. Screen locked. Nothing happened. There was no this kind of situation in the previous versions.

Expected behavior

After 5. click record 360 deg rotation, the viewer will rotate 360 deg horizontally and a movie will show up, being able to be saved.
Screenshots

Additional context
error message on step 4:

Exception in thread "3D-V-IMP-updater" java.lang.IllegalArgumentException: Rectangle width and height must be > 0
at java.awt.Robot.checkValidRect(Robot.java:455)
at java.awt.Robot.createScreenCapture(Robot.java:412)
at ij3d.ImageWindow3D.getNewImagePlus(ImageWindow3D.java:238)
at ij3d.ImageWindow3D.access$200(ImageWindow3D.java:54)
at ij3d.ImageWindow3D$ImagePlusUpdater.run(ImageWindow3D.java:196)

Fiji details (If possible, please paste here the contents of Plugins>Debug>System Information):

Thank you for your help. I really appreciate it.

tferr commented

Thanks for the detailed report @alexyangalexyang. Could you please replace the current SNT-4.1.6.jar with this snashot and test if you can complete your steps above? I am able to do so only the first time I create a viewer. If I create a second viewer, the problem will occur. It seems this bug has been around for many years, just the recent adjustments of the 3D widget made it occur on the first viewer initialization too.

I don't know what causes it. The issue seems rooted deep inside the 3D_Viewer. May be worth it to report this bug there. Also, note that we try our best to support the 3D_Viewer, but no one is actively working on that project, and, unless that changes, it is unlikely that it will keep working in the future. Reconstruction Viewer has an option to record a 360 rotation too. That is a bit clunky right now (it produces a sequence of images that still need to be imported into ImageJ), but it is likely to be more functional.