[vtk-developers] How to add 3D manipulation constrained in a 2D plane?

kent williams nkwmailinglists at gmail.com
Fri Nov 21 10:04:09 EST 2008


I have been working some time on a tracing application that uses
vtkContour as the main tracing widget.  You can look at the project
here if you're interested:

http://www.nitrc.org/projects/brainstracer/

The basic idea of BRAINSTracer is to show 3 2D views of a 3D volumes,
corresponding to the Axial, Sagittal, and Coronal view of the brain.
Within each 2D view, you can add any number of contours per slice.
The union of the voxels surrounded by all countours defines an image
mask or region of interest. You can have multiple regions of interest
per view, as well.

In the 'off plane' views all of the contours are shown where they
intersect the currently displayed slice.  In addition a 3D view shows
the current slices from the planer view and all the defined contours.

The next feature request is that instead of just displaying the
contours in the 3D view, that a 3D version of the vtkContour widget
allow dragging control points in the 3D view.  Currently, the geometry
from the contours is added to the off-plane 2D views and the 3D view,
but there's no manipulation of the geometry.

So I guess I'm looking for advise on how to go about implementing
this. As a user of vtk Widgets and not a developer, I'm not clear
exactly on where to start.   It's clear that it will involve going
from merely adding an actor pointing to the polygonal data of the
traces to the view, to adding a widget that manipulates the same
control points as the vtkContour widget.

I realize this isn't a specific question, but rather a general groping
around the problem, but any suggestions are welcome.



More information about the vtk-developers mailing list