Difference between revisions of "2010 NAMIC Project week: Viewer Manager Factory"
(Created page with ' __NOTOC__ <gallery> Image:PW-MIT2010.png|Projects List Image:genuFAp.jpg|Scatter plot of the original FA data through the genu of the corpu…') |
|||
| (3 intermediate revisions by 2 users not shown) | |||
| Line 8: | Line 8: | ||
==Key Investigators== | ==Key Investigators== | ||
| − | * | + | * Alex Yarmarkovich, Kilian, Steve, Nicole, JC, Julien |
| − | |||
| − | |||
<div style="margin: 20px;"> | <div style="margin: 20px;"> | ||
| Line 16: | Line 14: | ||
<h3>Objective</h3> | <h3>Objective</h3> | ||
| − | + | Create a pluggable structure for managing MRML<-->VTK Rendering and Widget interactions in the context of Slicer4. This include mapping MRML annotation nodes to and from vtkWidgets, mapping vtkMRMLModelNode and hierarchies to vtkActors/vtkMappers. | |
| − | + | Others: | |
| + | * Fidicials (all annotations) | ||
| + | * ROIs | ||
| + | * VolumeRendering | ||
| + | * Module-specific rendering (should be possible for loadable module to register a class that maps MRML nodes to-from elements in the vtkRenderWindow | ||
</div> | </div> | ||
| Line 25: | Line 27: | ||
<h3>Approach, Plan</h3> | <h3>Approach, Plan</h3> | ||
| + | Create a vtkSlicerManagerFactory and vtkSlicerAbstractManager. The vtkSlicerAbstractManager is parameterized by a vtkRenderWindow and is subclassed for each purpose. The vtkSlicerManagerFactory holds a registry of manager types so that when a new 3D Viewer is create, a set of managers is associated with the viewer. | ||
| − | + | Loadable modules should be able to access to ManagerFactory and register custom manager types to handle their custom nodes. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
</div> | </div> | ||
| Line 51: | Line 37: | ||
<h3>Progress</h3> | <h3>Progress</h3> | ||
| − | + | * created architecture and coded initial implementation of new vtkMRMLDisplayableManager library including | |
| + | ** vtkMRMLDisplayableManagerFactory class | ||
| + | ** vtkMRMLAbstractDisplayableManager class | ||
| + | ** vtkMRMLModelDisplayableManager class | ||
</div> | </div> | ||
| Line 67: | Line 56: | ||
##Extension -- commandline | ##Extension -- commandline | ||
##Extension -- loadable | ##Extension -- loadable | ||
| − | #Other (Please specify) | + | #Other (Please specify) YES: Slicer4 base code. |
==References== | ==References== | ||
</div> | </div> | ||
Latest revision as of 03:38, 25 June 2010
Home < 2010 NAMIC Project week: Viewer Manager Factory
Key Investigators
- Alex Yarmarkovich, Kilian, Steve, Nicole, JC, Julien
Objective
Create a pluggable structure for managing MRML<-->VTK Rendering and Widget interactions in the context of Slicer4. This include mapping MRML annotation nodes to and from vtkWidgets, mapping vtkMRMLModelNode and hierarchies to vtkActors/vtkMappers.
Others:
- Fidicials (all annotations)
- ROIs
- VolumeRendering
- Module-specific rendering (should be possible for loadable module to register a class that maps MRML nodes to-from elements in the vtkRenderWindow
Approach, Plan
Create a vtkSlicerManagerFactory and vtkSlicerAbstractManager. The vtkSlicerAbstractManager is parameterized by a vtkRenderWindow and is subclassed for each purpose. The vtkSlicerManagerFactory holds a registry of manager types so that when a new 3D Viewer is create, a set of managers is associated with the viewer.
Loadable modules should be able to access to ManagerFactory and register custom manager types to handle their custom nodes.
Progress
- created architecture and coded initial implementation of new vtkMRMLDisplayableManager library including
- vtkMRMLDisplayableManagerFactory class
- vtkMRMLAbstractDisplayableManager class
- vtkMRMLModelDisplayableManager class
Delivery Mechanism
This work will be delivered to the NA-MIC Kit as a (please select the appropriate options by noting YES against them below)
- ITK Module
- Slicer Module
- Built-in
- Extension -- commandline
- Extension -- loadable
- Other (Please specify) YES: Slicer4 base code.