[Insight-users] Curves3DExtractor

Karthik Krishnan Karthik.Krishnan at kitware.com
Fri Jan 27 13:30:17 EST 2006

Yes, I did have issues with the GUI not updating itself unless I 
reloaded the volume. I did not get a change to look closely at why this 
was happening. I'll do so when I get a chance.

Atwood, Robert C wrote:

>Karthik and ITK peopel:
>This  Curves3DExtractor is a great application and nearly what I wanted
>to do anyways , but I am having one frustrating problem with the
>Once an image is sent through the pipleine, and a spacial function
>selected with the frustrum selector, I can get some points. However, no
>matter how much I then change the controls of the spatial function
>selector, the extracted point set remains the same. I have clicked on
>all the available buttons , but none of them updates. I have looked in
>the code but I cannot so far  figure out where the spatial function
>filter actually gets the information from the widget, 
Here's a hunch though :

Take a look at lines 136 and lines 102

All communication for updates happens via the Command/Observers (There's 
ample description about this in the SW guide).

  m_ParametricSpaceViewer.GetNotifier()->AddObserver( fltk::GlDrawEvent(),
                  m_SpatialFunctionControl->GetDrawCommand() );

Here the spatialFunctionControl's DrawCommand is going to observe the 
ParametricSpaceViewer. In other words, every time an 
ParametricSpaceViewer invokes an fltk::GLDrawEvent(), the 
SpatialFunctionControl responds with its Execute method.

                         m_ParametricSpaceSamplesShape->GetDrawCommand() );

I did see that the shape never gets redrawn unless the volume is reloaded..

Specifically the spatial function's callback is in lines 37 and 238

and its GUI is in

You might want to have debug messages and see if all callbacks are 
invoked correctly when you change the parameters.. Its a pretty long chain:

1. SpatialFunctionControl observes the ParametricSpaceViewer (must 
redraw on it if the widget changes)
2. ExtractedParametricSpaceViewer observes the SpatialFunctionControl
3. ExtractedParametricSpaceViewer observes the parametric point set


>due to my
>ignorance of all things GUI. So I am stuck with whatever frustum I have
>selected the first time. Does it not do this for you? I updated the ITK
>and ITK_apps CVS today by the way so it should be latest CVS version. 
>Thanks for any help

More information about the Insight-users mailing list