enh(viz): add a 1st person camera controller
Description
In Sight Viewer, we would like to add controls to navigate into segmentations or volume renderings. The current trackball interaction is not appropriate for that.
Functional specifications
- Implement a new camera interaction that allows to navigate like in a 1st person shooter:
- Up/down arrows,Mouse wheel,(mouse+right click ?) to move forward/backwards
- Left/right arrows to strafe left/right
- Mouse+left click adjusts the orientation
- A button allows switching between the trackball interaction and the new one.
Technical specifications
- A new service must be implemented.
- To switch between the interactions, just start/stop the services.
Test plan
Manual testing in Sight Viewer.