Public Member Functions | Static Public Member Functions | Protected Member Functions

vtkKWEPaintbrushWidget Class Reference

Paintbrush widget. More...

#include <vtkKWEPaintbrushWidget.h>

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

List of all members.

Public Types

enum  {
  BeginDrawStrokeEvent = 10000, BeginDrawStrokeForThisSketchEvent, BeginEraseStrokeEvent, BeginEraseStrokeForThisSketchEvent,
  EndStrokeEvent, UndoStrokeEvent, RedoStrokeEvent, DeleteStrokeEvent,
  BeginResizeEvent, BeginIsotropicResizeEvent, BeginNewSketchEvent, ResizeEvent,
  EndResizeEvent, ToggleSelectStateEvent, DrawEvent, EraseEvent,
  IncrementSketchEvent, DecrementSketchEvent, IncreaseOpacityEvent, DecreaseOpacityEvent,
  SelectSketchEvent, SelectAllSketchesEvent, UnselectSketchEvent, UnSelectAllSketchesEvent,
  ToggleSelectAllSketchesEvent, ToggleSketchMutabilityEvent, DeleteSelectionEvent, MergeSelectionEvent,
  GoToSketchEvent, EnterEvent, LeaveEvent
}
enum  {
  PaintbrushInteract, PaintbrushDraw, PaintbrushErase, PaintbrushResize,
  PaintbrushIsotropicResize, PaintbrushDisabled
}
enum  PaintbrushMode { Edit, Select }

Public Member Functions

virtual void SetEnabled (int)
void SetRepresentation (vtkKWEPaintbrushRepresentation *r)
virtual void CreateDefaultRepresentation ()
virtual void DeepCopy (vtkAbstractWidget *w)
virtual void SetProcessEvents (int)

 vtkTypeRevisionMacro (vtkKWEPaintbrushWidget, vtkKWEAbstractPaintbrushWidget)
void PrintSelf (ostream &os, vtkIndent indent)

virtual void SetPaintbrushMode (int)
virtual int GetPaintbrushMode ()

virtual
vtkKWEPaintbrushSelectionWidget
GetPaintbrushSelectionWidget ()

virtual
vtkKWEPaintbrushAnnotationWidget
GetPaintbrushAnnotationWidget ()

void IncrementSketch ()
void GoToSketch (int n)
void SetWidgetStateToEnabled ()
void SetWidgetStateToDisabled ()
virtual int GetWidgetState ()

Static Public Member Functions

static vtkKWEPaintbrushWidgetNew ()

static void BeginDrawCallback (vtkAbstractWidget *)
static void BeginDrawThisSketchCallback (vtkAbstractWidget *)
static void BeginEraseCallback (vtkAbstractWidget *)
static void BeginEraseThisSketchCallback (vtkAbstractWidget *)
static void MoveCallback (vtkAbstractWidget *)
static void EndStrokeCallback (vtkAbstractWidget *)
static void UndoCallback (vtkAbstractWidget *)
static void RedoCallback (vtkAbstractWidget *)
static void DeleteCallback (vtkAbstractWidget *)
static void BeginResizeShapeCallback (vtkAbstractWidget *)
static void BeginIsotropicResizeShapeCallback (vtkAbstractWidget *)
static void EndResizeShapeCallback (vtkAbstractWidget *)
static void ToggleSelectStateCallback (vtkAbstractWidget *)
static void BeginNewSketchCallback (vtkAbstractWidget *)
static void IncrementSketchCallback (vtkAbstractWidget *)
static void DecrementSketchCallback (vtkAbstractWidget *)
static void IncreaseOpacityCallback (vtkAbstractWidget *)
static void DecreaseOpacityCallback (vtkAbstractWidget *)
static void MergeSelectionCallback (vtkAbstractWidget *)
static void ToggleSelectAllSketchesCallback (vtkAbstractWidget *)
static void ToggleSketchMutabilityCallback (vtkAbstractWidget *)
static void EnterWidgetCallback (vtkAbstractWidget *)
static void LeaveWidgetCallback (vtkAbstractWidget *)

Protected Member Functions

 vtkKWEPaintbrushWidget ()
 ~vtkKWEPaintbrushWidget ()
virtual void SetCursor (int interactionState)

int BeginDrawAction (vtkKWEPaintbrushWidget *dispatcher)
int EndStrokeAction (vtkKWEPaintbrushWidget *dispatcher)
int BeginEraseAction (vtkKWEPaintbrushWidget *dispatcher)
int HoverAction (vtkKWEPaintbrushWidget *dispatcher)
int UndoAction (vtkKWEPaintbrushWidget *dispatcher)
int RedoAction (vtkKWEPaintbrushWidget *dispatcher)
int DeleteAction (vtkKWEPaintbrushWidget *dispatcher)
int BeginResizeAction (vtkKWEPaintbrushWidget *dispatcher)
int BeginIsotropicResizeAction (vtkKWEPaintbrushWidget *dispatcher)
int ResizeAction (vtkKWEPaintbrushWidget *dispatcher)
int EndResizeAction (vtkKWEPaintbrushWidget *dispatcher)
int ToggleSelectStateAction (vtkKWEPaintbrushWidget *dispatcher)
int BeginNewSketchAction (vtkKWEPaintbrushWidget *dispatcher)
int IncrementSketchAction (vtkKWEPaintbrushWidget *dispatcher)
int DecrementSketchAction (vtkKWEPaintbrushWidget *dispatcher)
int EnterWidgetAction (vtkKWEPaintbrushWidget *dispatcher)
int LeaveWidgetAction (vtkKWEPaintbrushWidget *dispatcher)
int GoToSketchAction (vtkKWEPaintbrushWidget *dispatcher)

Detailed Description

Paintbrush widget.

The vtkKWEPaintbrushWidget is intended to edit and create segmentations. The widget operates in two modes. An "edit" mode and a "select" mode. In the "edit" mode, the widget can be used to edit and create segmentations. In the "select" mode, the widget allows you to select one or more seperate segmentations and then merge them into a single segmentation, do one click deletion of selected segmentations etc.

Framework:
The key to understanding brushes is to understand the datastructures, the model and role of the following classes. (1) vtkKWEPaintbrushDrawing (2) vtkKWEPaintbrushSketch (3) vtkKWEPaintbrushStroke (4) vtkKWEPaintbrushData (5) vtkKWEPaintbrushShape (6) vtkKWEPaintbrushProperty (7) vtkKWEPaintbrushOperation (8) Binary and Grayscale representations (9) vtkPointPlacer (10) Widget Groups
Drawing:
A PaintbrushWidget is used to edit a "Drawing" (vtkKWEPaintbrushDrawing). The drawing contains several "sketches" (vtkKWEPaintbrushSketch).
Sketch:
The drawing contains several "sketches" (vtkKWEPaintbrushSketch). Think of a each sketch as a segmentation. Each "sketch" is composed of one or more "strokes". Keeping the strokes around allows for undo-redo operations.
Stroke:
Each stroke (vtkKWEPaintbrushStroke) represents a swish of the brush. It is created interactively by dragging a "shape" (vtkKWEPaintbrushShape) around. It can also be created manually (to load predefined segmentations/edits). A stroke can be a positive stroke (draw) or a negative stroke (erase).
Shape:
Shapes (vtkKWEPaintbrushShape) modes a brush. It allows you to have your brush take a variety of forms. The output of the shape is filtered through an "operation" (vtkKWEPaintbrushOperation) before being composed into its stroke. Concrete shapes can be created by deriving from vtkKWEPaintbrushShape. Two examples, an ellipsoid and a box are provided. A shape maintains a polarity (correspoding to a draw and an erase brush).
Operation:
Operations (vtkKWEPaintbrushOperation) allow you to plug in filters that take effect as you draw. For instance, you can have a region growing operation that does a flood fill on the image as you draw. A few operations are provided as examples. Bridges between ITK and VTK can also be built. Its customary to use ITK's powerful imaging filters to construct operations. An example is vtkKWEITKConfidenceConnectedPaintbrushOperation.
PointPlacers:
The widget uses "point placers" (vtkPointPlacer) to dictate the placement of shapes. Point placers allow you to place constraints on the placement of shapes. For instance a vtkKWEVoxelAlignedImageActorPointPlacer constrains placement of shapes to pixel-grid boundaries. A vtkBoundedPlanePointPlacer can be used to constrain placement to an arbitrary region, bounded by a set of planes. A varirty of point placers exist in VTK and they lend themselves to easy subclassing.
vtkKWEPaintbrushData:
This is an abstract class that is used to store edits made using the paintbrush. Each sketch maintains its own paintbrush data. Each stroke also maintaints its own paintbrush data. The sketch's data is merely a composition of the data from all its storkes. Two concrete implementations of vtkKWEPaintbrushData exist. One for storing binary 1/0 strokes and another for storing grayscale strokes.

vtkKWEPaintbrushData provides minkowski operators. You can add, subtract, merge, intersect data.

Representations:
Two representations are supported, a binary and a grayscale representation. The Binary representation is rendered via an overlay. (see vtkKWEPaintbrushRepresentation2D) Its datastructures are modeled by vtkKWEPaintbrushStencilData and are memory efficient (They maintain a run length encoded structure internally).

The grayscale representation is rendered as contours. See vtkKWEPaintbrushRepresentationGrayscale2D. It stores the data internally using vtkKWEPaintbrushGrayscaleData, which maintains a vtkImageData under the hood.

Property:
A drawing can contain many sketches. Each sketch is rendered on the screen. A sketch's properties are encapsulated in vtkKWEPaintbrushProperty. A property manager automatically manages colors to ensure that each new sketch created by the user has unique colors. However you may set your own colors. Apart from managing colors, the property manages highlight styles. These take effect when a sketch is highlighted (interactively during select mode) or programatically. The Property also has methods to change the mutability of sketches, a functionality supported only when editing label maps.
Widget Groups:
It is customary for the user working on his segmentation(s) to have an axial, coronal and sagittal view side by side while editing. vtkKWEWidgetGroup enables this. It links widgets that exist on multiple render windows together, so that they behave in unison. It relieves the user of the burden of managing these disparate widgets and their underlying datastructures.
Supporting classes:
Several supporting classes exist in the library. Note that vtkKWEPaintbrushDrawing is a data-object. Algorithms can run on it that take each of the segmentations and perform operations. See for instance vtkKWEPaintbrushMergeSketches and vtkKWEITKPaintbrushExtractConnectedComponents. The former merges all sketches in a drawing. The latter extracts out each connected component in a sketch and populates them into seperate sketches.
Interactions:
Please see vtkKWEPaintbrushWidgetCallbackMapper for the interactions supported by the brush in its Edit and Select modes. One may override the class vtkKWEPaintbrushWidgetCallbackMapper to customize the interactions. One such override is vtkKWELightPaintbrushWidgetCallbackMapper.

Definition at line 147 of file vtkKWEPaintbrushWidget.h.


Member Enumeration Documentation

anonymous enum

Events and states. BTX

Enumerator:
BeginDrawStrokeEvent 
BeginDrawStrokeForThisSketchEvent 
BeginEraseStrokeEvent 
BeginEraseStrokeForThisSketchEvent 
EndStrokeEvent 
UndoStrokeEvent 
RedoStrokeEvent 
DeleteStrokeEvent 
BeginResizeEvent 
BeginIsotropicResizeEvent 
BeginNewSketchEvent 
ResizeEvent 
EndResizeEvent 
ToggleSelectStateEvent 
DrawEvent 
EraseEvent 
IncrementSketchEvent 
DecrementSketchEvent 
IncreaseOpacityEvent 
DecreaseOpacityEvent 
SelectSketchEvent 
SelectAllSketchesEvent 
UnselectSketchEvent 
UnSelectAllSketchesEvent 
ToggleSelectAllSketchesEvent 
ToggleSketchMutabilityEvent 
DeleteSelectionEvent 
MergeSelectionEvent 
GoToSketchEvent 
EnterEvent 
LeaveEvent 

Definition at line 192 of file vtkKWEPaintbrushWidget.h.

anonymous enum

Events and states. BTX

Enumerator:
PaintbrushInteract 
PaintbrushDraw 
PaintbrushErase 
PaintbrushResize 
PaintbrushIsotropicResize 
PaintbrushDisabled 

Definition at line 226 of file vtkKWEPaintbrushWidget.h.

Events and states. BTX

Enumerator:
Edit 
Select 

Definition at line 235 of file vtkKWEPaintbrushWidget.h.


Constructor & Destructor Documentation

vtkKWEPaintbrushWidget::vtkKWEPaintbrushWidget (  )  [protected]
vtkKWEPaintbrushWidget::~vtkKWEPaintbrushWidget (  )  [protected]

Member Function Documentation

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

Instantiate this class.

Reimplemented from vtkObject.

vtkKWEPaintbrushWidget::vtkTypeRevisionMacro ( vtkKWEPaintbrushWidget  ,
vtkKWEAbstractPaintbrushWidget   
)

Standard methods for a VTK class.

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

Standard methods for a VTK class.

Reimplemented from vtkKWEAbstractPaintbrushWidget.

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

The method for activiating and deactiviating this widget.

Reimplemented from vtkAbstractWidget.

void vtkKWEPaintbrushWidget::SetRepresentation ( vtkKWEPaintbrushRepresentation r  ) 

Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.

virtual void vtkKWEPaintbrushWidget::CreateDefaultRepresentation (  )  [virtual]

Create the default vtkKWEPaintbrushRepresentation if one is not set.

Implements vtkAbstractWidget.

virtual void vtkKWEPaintbrushWidget::SetPaintbrushMode ( int   )  [virtual]

Set the mode that the widget should operate in. The Paintbrush widget can operate either in an "edit" mode or in a "select" mode. In the "edit" mode, you can draw, erase, create and edit segmentations. The "select" mode facilitates one/multi-click selection of sketches and allows you merge and remove segmentations. Default mode is edit.

virtual int vtkKWEPaintbrushWidget::GetPaintbrushMode (  )  [virtual]

Set the mode that the widget should operate in. The Paintbrush widget can operate either in an "edit" mode or in a "select" mode. In the "edit" mode, you can draw, erase, create and edit segmentations. The "select" mode facilitates one/multi-click selection of sketches and allows you merge and remove segmentations. Default mode is edit.

virtual vtkKWEPaintbrushSelectionWidget* vtkKWEPaintbrushWidget::GetPaintbrushSelectionWidget (  )  [virtual]

Get the selection widget. This is relevant only if the PaintbrushMode is set to "Select".

virtual vtkKWEPaintbrushAnnotationWidget* vtkKWEPaintbrushWidget::GetPaintbrushAnnotationWidget (  )  [virtual]

Get the annotation manager. This is used to display hover annotations

virtual void vtkKWEPaintbrushWidget::DeepCopy ( vtkAbstractWidget w  )  [virtual]

Deep copy from another widget. Synchronizes states, representations, etc

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

Override method to propagate to the child vtkKWEPaintbrushSelection widget

Reimplemented from vtkAbstractWidget.

void vtkKWEPaintbrushWidget::IncrementSketch (  ) 

Programmatically perform the actions that correspond to the callbacks above

void vtkKWEPaintbrushWidget::GoToSketch ( int  n  ) 

Programmatically perform the actions that correspond to the callbacks above

void vtkKWEPaintbrushWidget::SetWidgetStateToEnabled (  ) 

Programmatically perform the actions that correspond to the callbacks above

void vtkKWEPaintbrushWidget::SetWidgetStateToDisabled (  ) 

Programmatically perform the actions that correspond to the callbacks above

virtual int vtkKWEPaintbrushWidget::GetWidgetState (  )  [virtual]

Programmatically perform the actions that correspond to the callbacks above

static void vtkKWEPaintbrushWidget::BeginDrawCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::BeginDrawThisSketchCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::BeginEraseCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::BeginEraseThisSketchCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::MoveCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::EndStrokeCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::UndoCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::RedoCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::DeleteCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::BeginResizeShapeCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::BeginIsotropicResizeShapeCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::EndResizeShapeCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::ToggleSelectStateCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::BeginNewSketchCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::IncrementSketchCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::DecrementSketchCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::IncreaseOpacityCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::DecreaseOpacityCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::MergeSelectionCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::ToggleSelectAllSketchesCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::ToggleSketchMutabilityCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::EnterWidgetCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

static void vtkKWEPaintbrushWidget::LeaveWidgetCallback ( vtkAbstractWidget  )  [static]

INTERNAL - Do not use. Callback interface to tie ends with the CallbackMapper for the events invoked by this widget. Note the seperation of "Callbacks" and "Actions". The callbacks are invoked in response to events from the RenderWindowInteractor. They are then dispatched to the WidgetGroup, who inturn calls the corresponding "Actions" on each of the widgets in the group. As a rule of thumb, the mapping of "Callbacks" is to "Events" from the Callbackmapper. The mapping of "Actions" is meant to be one pertinent to the geometry changes on the widget's representation. For instance a MouseMoveEvent should map to a "MoveCallback". This can, depending on the state of the widget, trigger any of three Actions: HoverAction, DrawAction, ResizeAction. This is done, so that you can have multiple widgets, say a seed widget drawn on 3 render windows and have them all synchronized, if they belong to the same group.

int vtkKWEPaintbrushWidget::BeginDrawAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::EndStrokeAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::BeginEraseAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::HoverAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::UndoAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::RedoAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::DeleteAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::BeginResizeAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::BeginIsotropicResizeAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::ResizeAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::EndResizeAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::ToggleSelectStateAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::BeginNewSketchAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::IncrementSketchAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::DecrementSketchAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::EnterWidgetAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::LeaveWidgetAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

int vtkKWEPaintbrushWidget::GoToSketchAction ( vtkKWEPaintbrushWidget dispatcher  )  [protected]

Geometric actions / states on that the representation responds to.

virtual void vtkKWEPaintbrushWidget::SetCursor ( int  interactionState  )  [protected, virtual]

Cursor management


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines