vtkInteractorObserver Class Reference

#include <vtkInteractorObserver.h>

Inheritance diagram for vtkInteractorObserver:

Inheritance graph
[legend]
Collaboration diagram for vtkInteractorObserver:

Collaboration graph
[legend]

List of all members.


Detailed Description

an abstract superclass for classes observing events invoked by vtkRenderWindowInteractor

vtkInteractorObserver is an abstract superclass for subclasses that observe events invoked by vtkRenderWindowInteractor. These subclasses are typically things like 3D widgets; objects that interact with actors in the scene, or interactively probe the scene for information.

vtkInteractorObserver defines the method SetInteractor() and enables and disables the processing of events by the vtkInteractorObserver. Use the methods EnabledOn() or SetEnabled(1) to turn on the interactor observer, and the methods EnabledOff() or SetEnabled(0) to turn off the interactor.

To support interactive manipulation of objects, this class (and subclasses) invoke the events StartInteractionEvent, InteractionEvent, and EndInteractionEvent. These events are invoked when the vtkInteractorObserver enters a state where rapid response is desired: mouse motion, etc. The events can be used, for example, to set the desired update frame rate (StartInteractionEvent), operate on data or update a pipeline (InteractionEvent), and set the desired frame rate back to normal values (EndInteractionEvent). Two other events, EnableEvent and DisableEvent, are invoked when the interactor observer is enabled or disabled.

See also:
vtk3DWidget vtkBoxWidget vtkLineWidget

Definition at line 52 of file vtkInteractorObserver.h.


Public Types

typedef vtkObject Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void OnChar ()
virtual void SetEnabled (int)
int GetEnabled ()
void EnabledOn ()
void EnabledOff ()
void On ()
void Off ()
virtual void SetInteractor (vtkRenderWindowInteractor *iren)
virtual vtkRenderWindowInteractorGetInteractor ()
virtual void SetPriority (float)
virtual float GetPriority ()
virtual void SetKeyPressActivation (int)
virtual int GetKeyPressActivation ()
virtual void KeyPressActivationOn ()
virtual void KeyPressActivationOff ()
virtual void SetKeyPressActivationValue (char)
virtual char GetKeyPressActivationValue ()
virtual vtkRendererGetDefaultRenderer ()
virtual void SetDefaultRenderer (vtkRenderer *)
virtual vtkRendererGetCurrentRenderer ()
virtual void SetCurrentRenderer (vtkRenderer *)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkInteractorObserverSafeDownCast (vtkObject *o)
static void ComputeDisplayToWorld (vtkRenderer *ren, double x, double y, double z, double worldPt[4])
static void ComputeWorldToDisplay (vtkRenderer *ren, double x, double y, double z, double displayPt[3])

Protected Member Functions

 vtkInteractorObserver ()
 ~vtkInteractorObserver ()
virtual void StartInteraction ()
virtual void EndInteraction ()
void ComputeDisplayToWorld (double x, double y, double z, double worldPt[4])
void ComputeWorldToDisplay (double x, double y, double z, double displayPt[3])

Static Protected Member Functions

static void ProcessEvents (vtkObject *object, unsigned long event, void *clientdata, void *calldata)

Protected Attributes

int Enabled
vtkCallbackCommandEventCallbackCommand
vtkCallbackCommandKeyPressCallbackCommand
float Priority
int KeyPressActivation
char KeyPressActivationValue
vtkRenderWindowInteractorInteractor
vtkRendererCurrentRenderer
vtkRendererDefaultRenderer
unsigned long CharObserverTag
unsigned long DeleteObserverTag

Member Typedef Documentation


Constructor & Destructor Documentation

vtkInteractorObserver::vtkInteractorObserver (  )  [protected]

vtkInteractorObserver::~vtkInteractorObserver (  )  [protected]


Member Function Documentation

virtual const char* vtkInteractorObserver::GetClassName (  )  [virtual]

static int vtkInteractorObserver::IsTypeOf ( const char *  name  )  [static]

virtual int vtkInteractorObserver::IsA ( const char *  name  )  [virtual]

static vtkInteractorObserver* vtkInteractorObserver::SafeDownCast ( vtkObject o  )  [static]

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

virtual void vtkInteractorObserver::SetEnabled ( int   )  [inline, virtual]

Methods for turning the interactor observer on and off, and determining its state. All subclasses must provide the SetEnabled() method. Enabling a vtkInteractorObserver has the side effect of adding observers; disabling it removes the observers. Prior to enabling the vtkInteractorObserver you must set the render window interactor (via SetInteractor()).

Reimplemented in vtkBoxWidget, vtkImagePlaneWidget, vtkImageTracerWidget, vtkImplicitPlaneWidget, vtkLineWidget, vtkOrientationMarkerWidget, vtkPlaneWidget, vtkPointWidget, vtkScalarBarWidget, vtkSphereWidget, vtkSplineWidget, vtkXYPlotWidget, vtkInteractorEventRecorder, and vtkInteractorStyle.

Definition at line 65 of file vtkInteractorObserver.h.

int vtkInteractorObserver::GetEnabled (  )  [inline]

Methods for turning the interactor observer on and off, and determining its state. All subclasses must provide the SetEnabled() method. Enabling a vtkInteractorObserver has the side effect of adding observers; disabling it removes the observers. Prior to enabling the vtkInteractorObserver you must set the render window interactor (via SetInteractor()).

Definition at line 66 of file vtkInteractorObserver.h.

void vtkInteractorObserver::EnabledOn (  )  [inline]

Methods for turning the interactor observer on and off, and determining its state. All subclasses must provide the SetEnabled() method. Enabling a vtkInteractorObserver has the side effect of adding observers; disabling it removes the observers. Prior to enabling the vtkInteractorObserver you must set the render window interactor (via SetInteractor()).

Definition at line 67 of file vtkInteractorObserver.h.

void vtkInteractorObserver::EnabledOff (  )  [inline]

Methods for turning the interactor observer on and off, and determining its state. All subclasses must provide the SetEnabled() method. Enabling a vtkInteractorObserver has the side effect of adding observers; disabling it removes the observers. Prior to enabling the vtkInteractorObserver you must set the render window interactor (via SetInteractor()).

Definition at line 68 of file vtkInteractorObserver.h.

void vtkInteractorObserver::On (  )  [inline]

Methods for turning the interactor observer on and off, and determining its state. All subclasses must provide the SetEnabled() method. Enabling a vtkInteractorObserver has the side effect of adding observers; disabling it removes the observers. Prior to enabling the vtkInteractorObserver you must set the render window interactor (via SetInteractor()).

Definition at line 69 of file vtkInteractorObserver.h.

void vtkInteractorObserver::Off (  )  [inline]

Methods for turning the interactor observer on and off, and determining its state. All subclasses must provide the SetEnabled() method. Enabling a vtkInteractorObserver has the side effect of adding observers; disabling it removes the observers. Prior to enabling the vtkInteractorObserver you must set the render window interactor (via SetInteractor()).

Definition at line 70 of file vtkInteractorObserver.h.

virtual void vtkInteractorObserver::SetInteractor ( vtkRenderWindowInteractor iren  )  [virtual]

This method is used to associate the widget with the render window interactor. Observers of the appropriate events invoked in the render window interactor are set up as a result of this method invocation. The SetInteractor() method must be invoked prior to enabling the vtkInteractorObserver.

Reimplemented in vtkInteractorEventRecorder, vtkInteractorStyle, and vtkInteractorStyleSwitch.

virtual vtkRenderWindowInteractor* vtkInteractorObserver::GetInteractor (  )  [virtual]

This method is used to associate the widget with the render window interactor. Observers of the appropriate events invoked in the render window interactor are set up as a result of this method invocation. The SetInteractor() method must be invoked prior to enabling the vtkInteractorObserver.

virtual void vtkInteractorObserver::SetPriority ( float   )  [virtual]

Set/Get the priority at which events are processed. This is used when multiple interactor observers are used simultaneously. The default value is 0.0 (lowest priority.) Note that when multiple interactor observer have the same priority, then the last observer added will process the event first. (Note: once the SetInteractor() method has been called, changing the priority does not effect event processing. You will have to SetInteractor(NULL), change priority, and then SetInteractor(iren) to have the priority take effect.)

virtual float vtkInteractorObserver::GetPriority (  )  [virtual]

Set/Get the priority at which events are processed. This is used when multiple interactor observers are used simultaneously. The default value is 0.0 (lowest priority.) Note that when multiple interactor observer have the same priority, then the last observer added will process the event first. (Note: once the SetInteractor() method has been called, changing the priority does not effect event processing. You will have to SetInteractor(NULL), change priority, and then SetInteractor(iren) to have the priority take effect.)

virtual void vtkInteractorObserver::SetKeyPressActivation ( int   )  [virtual]

Enable/Disable of the use of a keypress to turn on and off the interactor observer. (By default, the keypress is 'i' for "interactor observer".) Set the KeyPressActivationValue to change which key activates the widget.)

virtual int vtkInteractorObserver::GetKeyPressActivation (  )  [virtual]

Enable/Disable of the use of a keypress to turn on and off the interactor observer. (By default, the keypress is 'i' for "interactor observer".) Set the KeyPressActivationValue to change which key activates the widget.)

virtual void vtkInteractorObserver::KeyPressActivationOn (  )  [virtual]

Enable/Disable of the use of a keypress to turn on and off the interactor observer. (By default, the keypress is 'i' for "interactor observer".) Set the KeyPressActivationValue to change which key activates the widget.)

virtual void vtkInteractorObserver::KeyPressActivationOff (  )  [virtual]

Enable/Disable of the use of a keypress to turn on and off the interactor observer. (By default, the keypress is 'i' for "interactor observer".) Set the KeyPressActivationValue to change which key activates the widget.)

virtual void vtkInteractorObserver::SetKeyPressActivationValue ( char   )  [virtual]

Specify which key press value to use to activate the interactor observer (if key press activation is enabled). By default, the key press activation value is 'i'. Note: once the SetInteractor() method is invoked, changing the key press activation value will not affect the key press until SetInteractor(NULL)/SetInteractor(iren) is called.

virtual char vtkInteractorObserver::GetKeyPressActivationValue (  )  [virtual]

Specify which key press value to use to activate the interactor observer (if key press activation is enabled). By default, the key press activation value is 'i'. Note: once the SetInteractor() method is invoked, changing the key press activation value will not affect the key press until SetInteractor(NULL)/SetInteractor(iren) is called.

virtual vtkRenderer* vtkInteractorObserver::GetDefaultRenderer (  )  [virtual]

Set/Get the default renderer to use when activating the interactor observer. Normally when the widget is activated (SetEnabled(1) or when keypress activation takes place), the renderer over which the mouse pointer is positioned is used. Alternatively, you can specify the renderer to bind the interactor to when the interactor observer is activated.

virtual void vtkInteractorObserver::SetDefaultRenderer ( vtkRenderer  )  [virtual]

Set/Get the default renderer to use when activating the interactor observer. Normally when the widget is activated (SetEnabled(1) or when keypress activation takes place), the renderer over which the mouse pointer is positioned is used. Alternatively, you can specify the renderer to bind the interactor to when the interactor observer is activated.

Reimplemented in vtkInteractorStyleSwitch.

virtual vtkRenderer* vtkInteractorObserver::GetCurrentRenderer (  )  [virtual]

Set/Get the current renderer. Normally when the widget is activated (SetEnabled(1) or when keypress activation takes place), the renderer over which the mouse pointer is positioned is used and assigned to this Ivar. Alternatively, you might want to set the CurrentRenderer explicitly. WARNING: note that if the DefaultRenderer Ivar is set (see above), it will always override the parameter passed to SetCurrentRenderer, unless it is NULL. (i.e., SetCurrentRenderer(foo) = SetCurrentRenderer(DefaultRenderer).

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

Set/Get the current renderer. Normally when the widget is activated (SetEnabled(1) or when keypress activation takes place), the renderer over which the mouse pointer is positioned is used and assigned to this Ivar. Alternatively, you might want to set the CurrentRenderer explicitly. WARNING: note that if the DefaultRenderer Ivar is set (see above), it will always override the parameter passed to SetCurrentRenderer, unless it is NULL. (i.e., SetCurrentRenderer(foo) = SetCurrentRenderer(DefaultRenderer).

Reimplemented in vtkInteractorStyleSwitch.

virtual void vtkInteractorObserver::OnChar (  )  [virtual]

static void vtkInteractorObserver::ComputeDisplayToWorld ( vtkRenderer ren,
double  x,
double  y,
double  z,
double  worldPt[4] 
) [static]

static void vtkInteractorObserver::ComputeWorldToDisplay ( vtkRenderer ren,
double  x,
double  y,
double  z,
double  displayPt[3] 
) [static]

virtual void vtkInteractorObserver::StartInteraction (  )  [protected, virtual]

Utility routines used to start and end interaction. For example, it switches the display update rate. It does not invoke the corresponding events.

virtual void vtkInteractorObserver::EndInteraction (  )  [protected, virtual]

Utility routines used to start and end interaction. For example, it switches the display update rate. It does not invoke the corresponding events.

static void vtkInteractorObserver::ProcessEvents ( vtkObject object,
unsigned long  event,
void *  clientdata,
void *  calldata 
) [static, protected]

void vtkInteractorObserver::ComputeDisplayToWorld ( double  x,
double  y,
double  z,
double  worldPt[4] 
) [protected]

Helper method for subclasses.

void vtkInteractorObserver::ComputeWorldToDisplay ( double  x,
double  y,
double  z,
double  displayPt[3] 
) [protected]

Helper method for subclasses.


Member Data Documentation

Definition at line 181 of file vtkInteractorObserver.h.

Definition at line 184 of file vtkInteractorObserver.h.

Definition at line 185 of file vtkInteractorObserver.h.

Definition at line 188 of file vtkInteractorObserver.h.

Definition at line 191 of file vtkInteractorObserver.h.

Definition at line 192 of file vtkInteractorObserver.h.

Definition at line 195 of file vtkInteractorObserver.h.

Definition at line 198 of file vtkInteractorObserver.h.

Definition at line 199 of file vtkInteractorObserver.h.

unsigned long vtkInteractorObserver::CharObserverTag [protected]

Definition at line 201 of file vtkInteractorObserver.h.

unsigned long vtkInteractorObserver::DeleteObserverTag [protected]

Definition at line 202 of file vtkInteractorObserver.h.


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

Generated on Thu Jun 26 11:34:40 2008 for VTK by  doxygen 1.5.6