TubeTK/Python Development
From KitwarePublic
< TubeTK
Jump to navigationJump to search
Motivation
- Allow users to easily create and/or customize TubeTK functionality
- Ex: Create your own heuristic for automatic seed point generation for use by TubeTK's centerline extraction segmentation algorithm
- Allow fast programming/prototyping using TubeTK
Options
TubeTK
- Wrap all of TubeTK into python
- Source the user's python scripts from TubeTK's C++ code
TubeTK in Slicer
- 3D Slicer's python page
- Command-line (XML) python modules:
- Specify user interface and a single "execute" function (called when the Apply button is clicked)
- Can access Slicer's global objects, MRML tree, and other command-line modules (even if they are not python modules)
- Unfortunately, not interactive or dynamic
- Scripted python modules:
- Can be interactive and dynamic (ex. PythonGADScriptedModuleGUI, as explained on the last slides of the Slicer Python breakout session in Salt Lake City, Winter Project Week 2009 by Luca Antiga)
- Heavily dependent on Slicer
- Ideally, would want most functionality within python scripts that can be run with or without Slicer
- Create Slicer-independent python script, and call it from a small python script? Ex. PythonScript.py