Difference between revisions of "2011 Winter Project Week: Python and Slicer4"
From NAMIC Wiki
Line 48: | Line 48: | ||
</div> | </div> | ||
− | + | <div style="width: 97%; float: left;"> | |
==References== | ==References== | ||
+ | |||
+ | Example [http://viewvc.slicer.org/viewcvs.cgi/trunk/QTScriptedModules/Scripts/LabelStatistics.py?rev=15801&root=Slicer4&view=markup LabelStatistics module source code]. | ||
+ | |||
+ | [image:LabelStatistics-Module-2011-01-09.png|thumb|300px|Label Statistics running as a slicer module]. | ||
+ | |||
+ | |||
</div> | </div> | ||
− |
Revision as of 18:42, 9 January 2011
Home < 2011 Winter Project Week: Python and Slicer4Key Investigators
- Jc, Danielle - Kitware
- Jim - GE
- Steve - Isomics
- Demian - BWH
Objective
Develop scripting patterns for implementing workflows in slicer4 to port slicer3 functionality and streamline implementation of new functionality.
Approach, Plan
- Review initial experiences with PythonQt in slicer4
- Editor and SWidgets
- TubeTK-based Interactive PDF Segmenter
- Endoscopy
- Consider general architecture for creating module GUIs (scripted widgets)
- allow adaptive re-use of widgets in different modules such as:
- embed subset of painting tools inside interactive segmenters
- embed small model maker interface in segmentation tools
- embed some annotation (e.g. fiducial) for landmarking in registration
- embed CLI interfaces in workflow wizards
- define inheritance for PythonQt implementations to provide consistency across module GUI implementaitons
- allow adaptive re-use of widgets in different modules such as:
- Consider use cases for (scripted) slicer modules - can one implementation pattern cover all use cases?
- embed GUI in slicer interface (parent is slicer module panel)
- run as part of a workflow (parent is one step of workflow)
- run GUI stand-alone (module's widget is top level window)
- run without GUI (parameters passed on command line CLI-style)
Progress
Slicer4 developer beta supports PythonQt scripted modules.
References
Example LabelStatistics module source code.
[image:LabelStatistics-Module-2011-01-09.png|thumb|300px|Label Statistics running as a slicer module].