VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
vtkSeedWidget Class Reference

place multiple seed points More...

#include <vtkSeedWidget.h>

Inheritance diagram for vtkSeedWidget:
Inheritance graph
[legend]
Collaboration diagram for vtkSeedWidget:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { Start = 1, PlacingSeeds = 2, PlacedSeeds = 4, MovingSeed = 8 }

Public Member Functions

virtual void SetEnabled (int)
virtual void SetCurrentRenderer (vtkRenderer *)
virtual void SetInteractor (vtkRenderWindowInteractor *)
void CreateDefaultRepresentation ()
virtual void SetProcessEvents (int)
virtual void CompleteInteraction ()
virtual void RestartInteraction ()
virtual vtkHandleWidgetCreateNewHandle ()
void DeleteSeed (int n)
vtkHandleWidgetGetSeed (int n)
void SetRepresentation (vtkSeedRepresentation *rep)
vtkSeedRepresentationGetSeedRepresentation ()
virtual int GetWidgetState ()

Static Public Member Functions

static vtkSeedWidgetNew ()

Protected Member Functions

 vtkSeedWidget ()
 ~vtkSeedWidget ()

Static Protected Member Functions

static void AddPointAction (vtkAbstractWidget *)
static void CompletedAction (vtkAbstractWidget *)
static void MoveAction (vtkAbstractWidget *)
static void EndSelectAction (vtkAbstractWidget *)
static void DeleteAction (vtkAbstractWidget *)

Protected Attributes

int WidgetState
vtkSeedList * Seeds
int Defining
typedef vtkAbstractWidget Superclass
static int IsTypeOf (const char *type)
static vtkSeedWidgetSafeDownCast (vtkObjectBase *o)
virtual int IsA (const char *type)
vtkSeedWidgetNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
virtual vtkObjectBaseNewInstanceInternal () const

Detailed Description

place multiple seed points

The vtkSeedWidget is used to placed multiple seed points in the scene. The seed points can be used for operations like connectivity, segmentation, and region growing.

To use this widget, specify an instance of vtkSeedWidget and a representation (a subclass of vtkSeedRepresentation). The widget is implemented using multiple instances of vtkHandleWidget which can be used to position the seed points (after they are initially placed). The representations for these handle widgets are provided by the vtkSeedRepresentation.

Event Bindings:
By default, the widget responds to the following VTK events (i.e., it watches the vtkRenderWindowInteractor for these events):
   LeftButtonPressEvent - add a point or select a handle (i.e., seed)
   RightButtonPressEvent - finish adding the seeds
   MouseMoveEvent - move a handle (i.e., seed)
   LeftButtonReleaseEvent - release the selected handle (seed)
 
Event Bindings:
Note that the event bindings described above can be changed using this class's vtkWidgetEventTranslator. This class translates VTK events into the vtkSeedWidget's widget events:
   vtkWidgetEvent::AddPoint -- add one point; depending on the state
                               it may the first or second point added. Or,
                               if near handle, select handle.
   vtkWidgetEvent::Completed -- finished adding seeds.
   vtkWidgetEvent::Move -- move the second point or handle depending on the state.
   vtkWidgetEvent::EndSelect -- the handle manipulation process has completed.
 
Event Bindings:
This widget invokes the following VTK events on itself (which observers can listen for):
   vtkCommand::StartInteractionEvent (beginning to interact)
   vtkCommand::EndInteractionEvent (completing interaction)
   vtkCommand::InteractionEvent (moving after selecting something)
   vtkCommand::PlacePointEvent (after point is positioned;
                                call data includes handle id (0,1))
 
See also:
vtkHandleWidget vtkSeedReoresentation
Events:
vtkCommand::EndInteractionEvent vtkCommand::MouseMoveEvent vtkCommand::InteractionEvent vtkCommand::LeftButtonPressEvent vtkCommand::StartInteractionEvent vtkCommand::PlacePointEvent vtkCommand::LeftButtonReleaseEvent
Tests:
vtkSeedWidget (Tests)

Definition at line 85 of file vtkSeedWidget.h.


Member Typedef Documentation

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

Definition at line 93 of file vtkSeedWidget.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
Start 
PlacingSeeds 
PlacedSeeds 
MovingSeed 

Definition at line 167 of file vtkSeedWidget.h.


Constructor & Destructor Documentation


Member Function Documentation

static vtkSeedWidget* vtkSeedWidget::New ( ) [static]

Instantiate this class.

Reimplemented from vtkObject.

static int vtkSeedWidget::IsTypeOf ( const char *  type) [static]

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

virtual int vtkSeedWidget::IsA ( const char *  type) [virtual]

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

virtual vtkObjectBase* vtkSeedWidget::NewInstanceInternal ( ) const [protected, virtual]

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

void vtkSeedWidget::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

virtual void vtkSeedWidget::SetEnabled ( int  ) [virtual]

The method for activating and deactivating this widget. This method must be overridden because it is a composite widget and does more than its superclasses' vtkAbstractWidget::SetEnabled() method.

Reimplemented from vtkAbstractWidget.

virtual void vtkSeedWidget::SetCurrentRenderer ( vtkRenderer ) [virtual]

Set the current renderer. This method also propagates to all the child handle widgets, if any exist

Reimplemented from vtkInteractorObserver.

Set the interactor. This method also propagates to all the child handle widgets, if any exist

Reimplemented from vtkInteractorObserver.

Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene. Note that the representation is a subclass of vtkProp so it can be added to the renderer independent of the widget.

Definition at line 114 of file vtkSeedWidget.h.

Return the representation as a vtkSeedRepresentation.

Definition at line 123 of file vtkSeedWidget.h.

Create the default widget representation if one is not set.

Implements vtkAbstractWidget.

virtual void vtkSeedWidget::SetProcessEvents ( int  ) [virtual]

Methods to change the whether the widget responds to interaction. Overridden to pass the state to component widgets.

Reimplemented from vtkAbstractWidget.

virtual void vtkSeedWidget::CompleteInteraction ( ) [virtual]

Method to be called when the seed widget should stop responding to the place point interaction. The seed widget, when defined allows you place seeds by clicking on the render window. Use this method to indicate that you would like to stop placing seeds interactively. If you'd like the widget to stop responding to any user interaction simply disable event processing by the widget by calling widget->ProcessEventsOff()

virtual void vtkSeedWidget::RestartInteraction ( ) [virtual]

Method to be called when the seed widget should start responding to the interaction.

Use this method to programmatically create a new handle. In interactive mode, (when the widget is in the PlacingSeeds state) this method is automatically invoked. The method returns the handle created. A valid seed representation must exist for the widget to create a new handle.

Delete the nth seed.

Get the nth seed

virtual int vtkSeedWidget::GetWidgetState ( ) [virtual]

Get the widget state.

static void vtkSeedWidget::AddPointAction ( vtkAbstractWidget ) [static, protected]
static void vtkSeedWidget::CompletedAction ( vtkAbstractWidget ) [static, protected]
static void vtkSeedWidget::MoveAction ( vtkAbstractWidget ) [static, protected]
static void vtkSeedWidget::EndSelectAction ( vtkAbstractWidget ) [static, protected]
static void vtkSeedWidget::DeleteAction ( vtkAbstractWidget ) [static, protected]

Member Data Documentation

Definition at line 181 of file vtkSeedWidget.h.

vtkSeedList* vtkSeedWidget::Seeds [protected]

Definition at line 192 of file vtkSeedWidget.h.

Definition at line 195 of file vtkSeedWidget.h.


The documentation for this class was generated from the following file: