2015 Winter Project Week:SlicerMicroMacroScale
From NAMIC Wiki
Home < 2015 Winter Project Week:SlicerMicroMacroScale
Key Investigators
- Nicole Aucoin (BWH)
- Bradley Lowenkamp (Medical Science Computing)
Project Description
Objective
- Fix bugs exposed by using small and large scale images
Approach, Plan
- List of related bugs:
- Sample data sets
Progress
- Investigating the base scaling assumptions for vtkSeedWidgets in 3d ctkVTKRenderView vs 2d ctkVTKSliceView
- writing a pure CTK test case - it shows that in the default set up for the two kinds of views and mirrored seed widgets the seeds are the same size (large)
- in Slicer, the camera in the 2d view is looking at the 2d scene from a camera distance of 1.0 while the default 3D distance is 600.0
- in the pure CTK test case, resetting the 3D camera to a position (0,0,600) the same issues can be seen as are visible in Slicer (tiny seed in 3D, large in 2D)
- talking with Jim:
- when background volume changes, reset the camera position for each slice view to take into account the bounding box of the data
- use a distance calculation formula that takes the viewing angle into account (default 30): (max_data_dim/2.0) / sin(view_angle / 2.0)
- once have a new setting:
- reset the scale factor 2d on the 2d fid disp manager to 1.0
- reset the Z distance of the camera position in the slice view
- make sure set the camera on the correct renderer
- there is an overlay renderer on the slice viewers so using the first renderer from the collection in my ctk example didn't work
- get the renderer from the light box manager at all times, a light box index of 0 is always fine
- turns out that when creating a new seed, you need to explictly reset the renderer on the new handle
- make sure set the camera on the correct renderer
- trigger rerendering of the seeds (in tests, we needed to remove all and readd them to see the new size)
- double check placing rulers and ROIs in 2d
- double check display to world coordinate calculation in the 2d disp managers