Difference between revisions of "2009 Winter Project Week Python"

From NAMIC Wiki
Jump to: navigation, search
 
(One intermediate revision by the same user not shown)
Line 8: Line 8:
  
 
===Key Investigators===
 
===Key Investigators===
* Luca Antiga (Medical Imaging Unit, Biomedical Engineering Department, Mario Negri Institute)
+
* Luca Antiga (Mario Negri Institute)
 
* Steve Piper (Isomics)
 
* Steve Piper (Isomics)
 
* Demian Wasserman (INRIA)
 
* Demian Wasserman (INRIA)
Line 25: Line 25:
 
<h1>Approach, Plan</h1>
 
<h1>Approach, Plan</h1>
  
The Slicer Python interface now works well for both non-interactive and interactive modules. A few improvements are still needed, namely <br>
+
The Slicer Python interface now works well for both non-interactive and interactive modules.  
  
- calling VTK static methods - e.g. slicer.vtkMath.Norm(v)
+
Interface has to be stabilized, and it is still lacking setting custom observers to vtkObject.
  
- handling modified arguments - e.g. slicer.vtkMath::Normalize(v)
+
Documentation has to be improved.
  
- defining methods with the exact number of arguments (now it's not constrained, so if it's wrong Tcl complains) - this will require a patch on the VTK Tcl wrappers
+
Packaging Scipy is currently a problem.
  
- fix a memory leak associated with Python scripted modules
+
</div>
  
- review the Slicer Python to Numpy code and eventually extend it to handle more general image or data types
+
<div style="width: 40%; float: left;">
  
- implement callback functions in Slicer Python, for widgets and programmable filters
+
<h1>Progress</h1>
  
As for packaging problems, testing will have to be performed on several architectures.
+
The Python interface is being adopted by several groups, both for command-line and interactive modules. The Numpy interface works well.
  
Finally, documentation will be improved.
+
A AddObserver method has been added to the wrapped vtkObject that accepts callbacks written in Python.
  
</div>
+
The Python breakout session has illustrated the ways Python can be used in Slicer and the ways users can implement their own modules. Slides will be on the wiki in a few days.
  
<div style="width: 40%; float: left;">
+
A --evalpython option has been added to the Slicer3 executable in order to run Python code in Slicer without starting the GUI (for batch processing)
 
 
<h1>Progress</h1>
 
  
TODO
+
Packaging problems have been
  
 
</div>
 
</div>

Latest revision as of 15:59, 9 January 2009

Home < 2009 Winter Project Week Python



Key Investigators

  • Luca Antiga (Mario Negri Institute)
  • Steve Piper (Isomics)
  • Demian Wasserman (INRIA)

Objective

To finalize the implementation of the Slicer Python interface and solve packaging problems linked to Scipy.

Approach, Plan

The Slicer Python interface now works well for both non-interactive and interactive modules.

Interface has to be stabilized, and it is still lacking setting custom observers to vtkObject.

Documentation has to be improved.

Packaging Scipy is currently a problem.

Progress

The Python interface is being adopted by several groups, both for command-line and interactive modules. The Numpy interface works well.

A AddObserver method has been added to the wrapped vtkObject that accepts callbacks written in Python.

The Python breakout session has illustrated the ways Python can be used in Slicer and the ways users can implement their own modules. Slides will be on the wiki in a few days.

A --evalpython option has been added to the Slicer3 executable in order to run Python code in Slicer without starting the GUI (for batch processing)

Packaging problems have been