Back to
Projects List
QuickAlign Refinement
Key Investigators
- Sara Rolfe (SCRI, USA)
- Murat Maga (SCRI, USA)
Presenter location: In-person
Project Description
QuickAlign is a SlicerMorph module used to temporarily fix alignment in two 3D viewers. The user aligns the view in each viewer and then applies the linking. If the nodes are Markups, then joint editing of the point lists can be enabled. We plan to make usability improvements.
Objective
- Address of issue object size/zoom
- Assess implementations for transforming multiple nodes in scene
- Discuss whether this may be a useful feature outside SlicerMorph
Approach and Plan
- Develop plan for correcting for object size/zoom
- Discuss alternate implementations using camera transforms
Progress and Next Steps
- Implemented and tested alternative methods based on (a) camera event updates from camera instead of 3D view linking and (b) transforming the camera instead of the linked nodes.
- Identified a more robust solution where camera positions are tracked and updated on interaction events applying a transform. This is likely the best solution if the feature will be integrated in the core and will support alignment of views with multiple nodes. Refer to Endoscopy and ViewPoint examples for camera update.
- Identified a short-term solution for the SlicerMorph extension where an approximate zoom factor is calculated from the initial camera parameters and object position, then applied as a scaling factor to the aligned object node. The scale factor could be provided as a slider in the QuickAlign module so the zoom could be adjusted both jointly (in the scene) and independently (via the scaling factor).
- Zoom-factor solution pushed to SlicerMorph repo for testing
Illustrations
![unalignedSkulls](https://github.com/NA-MIC/ProjectWeek/assets/43060230/68d333ea-309d-4025-bf68-7bee7adf350d)
Background and References
Endoscopy example
ViewPoint example