Difference between revisions of "2008 Winter Project Week:PythonSupport"
From NAMIC Wiki
Line 26: | Line 26: | ||
<h1>Approach, Plan </h1> | <h1>Approach, Plan </h1> | ||
In the project week, we plan to | In the project week, we plan to | ||
− | * | + | * solve building issues, check stability on different platforms |
+ | * threading issues: modifying the MRML scene from Python command line modules in a thread-safe way | ||
+ | * calling modules from Python | ||
+ | * provide a Python equivalent to ScriptedModules | ||
* define what aspects will end up in the next release | * define what aspects will end up in the next release | ||
− | + | * propose a working set of Python command line modules (interact with Sonia's breakout session on Tuesday?) to be included in the next release | |
− | + | * write documentation on how to write Python command line modules | |
− | * propose a working set of Python command line modules (interact with Sonia's breakout session on Tuesday?) to be included in the next release | ||
</div> | </div> | ||
Revision as of 21:19, 6 January 2008
Home < 2008 Winter Project Week:PythonSupport
Key Investigators
- Mario Negri Institute: Luca Antiga
- UCSD: Bryan Smith
Objective
Python has a great potential in Slicer3. Its uses span:
- Python command line modules (advantages: easy to write, access to Python libraries, don't need a compiler to write new modules)
- matplotlib and scipy Python modules (they provide a matlab-like processing environment for images directly within Slicer).
- Python as Slicer's scripting language (for automating task and programmatically access modules - this is Dan's new baby!)
Approach, Plan
In the project week, we plan to
- solve building issues, check stability on different platforms
- threading issues: modifying the MRML scene from Python command line modules in a thread-safe way
- calling modules from Python
- provide a Python equivalent to ScriptedModules
- define what aspects will end up in the next release
- propose a working set of Python command line modules (interact with Sonia's breakout session on Tuesday?) to be included in the next release
- write documentation on how to write Python command line modules
Progress
June 2007 Project Week
These are the results of the MIT project week (largely Dan's work)
- Implemented Python Modules
- Add search for Python in ModuleFactory
- Can put .py files in the CommandLine Module path
- Execute Python within Slicer
- Full access to VTK, vtkTEEM, vtkITK, etc.
- If the Python module provides an XML description, and an Execute function, will be added as a CommandLine Module
- Add search for Python in ModuleFactory
- ToDo
- Check-in (needs USE_PYTHON guards)
- Progress reporting
- Simplify the API
- Automate command line parsing using XML description
Later on, after the meeting
- command line parsing has been completed (in a very simple way, without needing access to XML)
- API has been simplified