scalableminds / webknossos

Visualize, share and annotate your large 3D images online
https://webknossos.org
GNU Affero General Public License v3.0
123 stars 18 forks source link

Clipping distance changes with zoom in arbitrary mode #7725

Open philippotto opened 3 months ago

philippotto commented 3 months ago

Context

Skeleton nodes are only rendered when they are within the configured clipping distance. Further context in this GH discussion.

Expected Behavior

Only nodes that are visible should be selectable by the user.

Current Behavior

The clipping distance is not perfectly respected which is why you can sometimes select nodes that are not rendered.

Steps to Reproduce the bug

  1. create a node
  2. move in z by a few slices
  3. reduce the clipping distance so that it is not visible anymore
  4. click at the position where the node is in XY
  5. -> wk jumps to the clicked node even though it was invisible

Your Environment for bug

daniel-wer commented 3 months ago

Not sure if this is related, but I noticed that the clipping in oblique and flight mode changes when zooming. If the clipping distance were in nm (which it is supposed to be) this shouldn't happen.

philippotto commented 3 months ago

@daniel-wer In #7732 you wrote that that PR contributes to this issue. What parts are still missing?

daniel-wer commented 3 months ago

I wrote this, because my fix didn't explain this observation

Not sure if this is related, but I noticed that the clipping in oblique and flight mode changes when zooming. If the clipping distance were in nm (which it is supposed to be) this shouldn't happen.

However, I did a quick test again and although the clipping changed during zooming I wasn't able to select invisible nodes, so I guess this particular issue (mismatch between what's displayed and the node picking) is resolved. What remains to be investigated is why the clipping distance in oblique/flight mode changes during zooming and doesn't seem to be in nm.

philippotto commented 3 months ago

Great, thanks for the clarification!