VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
vtkRenderWindowInteractor Class Reference

platform-independent render window interaction including picking and frame rate control. More...

#include <vtkRenderWindowInteractor.h>

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

List of all members.

Public Types

enum  { OneShotTimer = 1, RepeatingTimer }
typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkRenderWindowInteractorNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
virtual void UnRegister (vtkObjectBase *o)
virtual void Start ()
virtual void UpdateSize (int x, int y)
int CreateRepeatingTimer (unsigned long duration)
int CreateOneShotTimer (unsigned long duration)
int IsOneShotTimer (int timerId)
unsigned long GetTimerDuration (int timerId)
int ResetTimer (int timerId)
int DestroyTimer (int timerId)
virtual int GetVTKTimerId (int platformTimerId)
virtual void TerminateApp (void)
virtual vtkAbstractPropPickerCreateDefaultPicker ()
virtual void GetMousePosition (int *x, int *y)
virtual void Render ()
virtual vtkRendererFindPokedRenderer (int, int)
vtkObserverMediatorGetObserverMediator ()
virtual void Initialize ()
void ReInitialize ()
virtual void Enable ()
virtual void Disable ()
virtual int GetEnabled ()
virtual void EnableRenderOn ()
virtual void EnableRenderOff ()
virtual void SetEnableRender (bool)
virtual bool GetEnableRender ()
void SetRenderWindow (vtkRenderWindow *aren)
virtual vtkRenderWindowGetRenderWindow ()
virtual int CreateTimer (int timerType)
virtual int DestroyTimer ()
virtual void SetTimerDuration (unsigned long)
virtual unsigned long GetTimerDuration ()
virtual void SetTimerEventId (int)
virtual int GetTimerEventId ()
virtual void SetTimerEventType (int)
virtual int GetTimerEventType ()
virtual void SetTimerEventDuration (int)
virtual int GetTimerEventDuration ()
virtual void SetTimerEventPlatformId (int)
virtual int GetTimerEventPlatformId ()
virtual void SetInteractorStyle (vtkInteractorObserver *)
virtual vtkInteractorObserverGetInteractorStyle ()
virtual void SetLightFollowCamera (int)
virtual int GetLightFollowCamera ()
virtual void LightFollowCameraOn ()
virtual void LightFollowCameraOff ()
virtual void SetDesiredUpdateRate (double)
virtual double GetDesiredUpdateRate ()
virtual void SetStillUpdateRate (double)
virtual double GetStillUpdateRate ()
virtual int GetInitialized ()
virtual void SetPicker (vtkAbstractPicker *)
virtual vtkAbstractPickerGetPicker ()
virtual void SetPickingManager (vtkPickingManager *)
virtual vtkPickingManagerGetPickingManager ()
virtual void ExitCallback ()
virtual void UserCallback ()
virtual void StartPickCallback ()
virtual void EndPickCallback ()
void HideCursor ()
void ShowCursor ()
void FlyTo (vtkRenderer *ren, double x, double y, double z)
void FlyTo (vtkRenderer *ren, double *x)
void FlyToImage (vtkRenderer *ren, double x, double y)
void FlyToImage (vtkRenderer *ren, double *x)
virtual void SetNumberOfFlyFrames (int)
virtual int GetNumberOfFlyFrames ()
virtual void SetDolly (double)
virtual double GetDolly ()
virtual intGetEventPosition ()
virtual void GetEventPosition (int &, int &)
virtual void GetEventPosition (int[2])
virtual intGetLastEventPosition ()
virtual void GetLastEventPosition (int &, int &)
virtual void GetLastEventPosition (int[2])
virtual void SetLastEventPosition (int, int)
void SetLastEventPosition (int[2])
virtual void SetEventPosition (int x, int y)
virtual void SetEventPosition (int pos[2])
virtual void SetEventPositionFlipY (int x, int y)
virtual void SetEventPositionFlipY (int pos[2])
virtual void SetAltKey (int)
virtual int GetAltKey ()
virtual void SetControlKey (int)
virtual int GetControlKey ()
virtual void SetShiftKey (int)
virtual int GetShiftKey ()
virtual void SetKeyCode (char)
virtual char GetKeyCode ()
virtual void SetRepeatCount (int)
virtual int GetRepeatCount ()
virtual void SetKeySym (const char *)
virtual char * GetKeySym ()
void SetEventInformation (int x, int y, int ctrl=0, int shift=0, char keycode=0, int repeatcount=0, const char *keysym=0)
void SetEventInformationFlipY (int x, int y, int ctrl=0, int shift=0, char keycode=0, int repeatcount=0, const char *keysym=0)
void SetKeyEventInformation (int ctrl=0, int shift=0, char keycode=0, int repeatcount=0, const char *keysym=0)
virtual void SetSize (int, int)
void SetSize (int[2])
virtual intGetSize ()
virtual void GetSize (int &, int &)
virtual void GetSize (int[2])
virtual void SetEventSize (int, int)
void SetEventSize (int[2])
virtual intGetEventSize ()
virtual void GetEventSize (int &, int &)
virtual void GetEventSize (int[2])
virtual void SetUseTDx (bool)
virtual bool GetUseTDx ()
virtual void MouseMoveEvent ()
virtual void RightButtonPressEvent ()
virtual void RightButtonReleaseEvent ()
virtual void LeftButtonPressEvent ()
virtual void LeftButtonReleaseEvent ()
virtual void MiddleButtonPressEvent ()
virtual void MiddleButtonReleaseEvent ()
virtual void MouseWheelForwardEvent ()
virtual void MouseWheelBackwardEvent ()
virtual void ExposeEvent ()
virtual void ConfigureEvent ()
virtual void EnterEvent ()
virtual void LeaveEvent ()
virtual void KeyPressEvent ()
virtual void KeyReleaseEvent ()
virtual void CharEvent ()
virtual void ExitEvent ()

Static Public Member Functions

static vtkRenderWindowInteractorNew ()
static int IsTypeOf (const char *type)
static vtkRenderWindowInteractorSafeDownCast (vtkObjectBase *o)

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkRenderWindowInteractor ()
 ~vtkRenderWindowInteractor ()
virtual vtkPickingManagerCreateDefaultPickingManager ()
virtual int InternalCreateTimer (int timerId, int timerType, unsigned long duration)
virtual int InternalDestroyTimer (int platformTimerId)
int GetCurrentTimerId ()

Protected Attributes

vtkRenderWindowRenderWindow
vtkInteractorObserverInteractorStyle
vtkAbstractPickerPicker
vtkPickingManagerPickingManager
int Initialized
int Enabled
bool EnableRender
int Style
int LightFollowCamera
int ActorMode
double DesiredUpdateRate
double StillUpdateRate
int AltKey
int ControlKey
int ShiftKey
char KeyCode
int RepeatCount
char * KeySym
int EventPosition [2]
int LastEventPosition [2]
int EventSize [2]
int Size [2]
int TimerEventId
int TimerEventType
int TimerEventDuration
int TimerEventPlatformId
int NumberOfFlyFrames
double Dolly
vtkObserverMediatorObserverMediator
vtkTimerIdMap * TimerMap
unsigned long TimerDuration
int HandleEventLoop
bool UseTDx

Friends

class vtkInteractorEventRecorder
struct vtkTimerStruct
class vtkInteractorObserver
void GrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
void ReleaseFocus ()

Detailed Description

platform-independent render window interaction including picking and frame rate control.

vtkRenderWindowInteractor provides a platform-independent interaction mechanism for mouse/key/time events. It serves as a base class for platform-dependent implementations that handle routing of mouse/key/timer messages to vtkInteractorObserver and its subclasses. vtkRenderWindowInteractor also provides controls for picking, rendering frame rate, and headlights.

vtkRenderWindowInteractor has changed from previous implementations and now serves only as a shell to hold user preferences and route messages to vtkInteractorStyle. Callbacks are available for many events. Platform specific subclasses should provide methods for manipulating timers, TerminateApp, and an event loop if required via Initialize/Start/Enable/Disable.

Warning:
vtkRenderWindowInteractor routes events through VTK's command/observer design pattern. That is, when vtkRenderWindowInteractor (actually, one of its subclasses) sees a platform-dependent event, it translates this into a VTK event using the InvokeEvent() method. Then any vtkInteractorObservers registered for that event are expected to respond as appropriate.
See also:
vtkInteractorObserver
Events:
vtkCommand::KeyPressEvent vtkCommand::RenderEvent vtkCommand::ConfigureEvent vtkCommand::MouseWheelBackwardEvent vtkCommand::KeyReleaseEvent vtkCommand::MiddleButtonPressEvent vtkCommand::UserEvent vtkCommand::EnterEvent vtkCommand::EndPickEvent vtkCommand::MiddleButtonReleaseEvent vtkCommand::RightButtonPressEvent vtkCommand::CharEvent vtkCommand::MouseMoveEvent vtkCommand::ExitEvent vtkCommand::StartPickEvent vtkCommand::MouseWheelForwardEvent vtkCommand::ExposeEvent vtkCommand::LeftButtonPressEvent vtkCommand::LeaveEvent vtkCommand::RightButtonReleaseEvent vtkCommand::LeftButtonReleaseEvent
Examples:
vtkRenderWindowInteractor (Examples)
Tests:
vtkRenderWindowInteractor (Tests)

Definition at line 75 of file vtkRenderWindowInteractor.h.


Member Typedef Documentation


Member Enumeration Documentation

anonymous enum
Enumerator:
OneShotTimer 
RepeatingTimer 

Definition at line 181 of file vtkRenderWindowInteractor.h.


Constructor & Destructor Documentation


Member Function Documentation

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkTestingInteractor, vtkCocoaRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkGenericRenderWindowInteractor.

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

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkTestingInteractor, vtkCarbonRenderWindowInteractor, vtkCocoaRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkGenericRenderWindowInteractor.

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

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkTestingInteractor, vtkCarbonRenderWindowInteractor, vtkCocoaRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkGenericRenderWindowInteractor.

virtual vtkObjectBase* vtkRenderWindowInteractor::NewInstanceInternal ( ) const [protected, virtual]
void vtkRenderWindowInteractor::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkObject.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkTestingInteractor, vtkCarbonRenderWindowInteractor, vtkCocoaRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkGenericRenderWindowInteractor.

virtual void vtkRenderWindowInteractor::Initialize ( ) [virtual]

Prepare for handling events. This must be called before the interactor will work.

Definition at line 89 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::UnRegister ( vtkObjectBase o) [virtual]

This Method detects loops of RenderWindow-Interactor, so objects are freed properly.

Reimplemented from vtkObjectBase.

virtual void vtkRenderWindowInteractor::Start ( void  ) [inline, virtual]

Start the event loop. This is provided so that you do not have to implement your own event loop. You still can use your own event loop if you want. Initialize should be called before Start.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, vtkCocoaRenderWindowInteractor, and vtkTestingInteractor.

Definition at line 100 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::Enable ( ) [inline, virtual]

Enable/Disable interactions. By default interactors are enabled when initialized. Initialize() must be called prior to enabling/disabling interaction. These methods are used when a window/widget is being shared by multiple renderers and interactors. This allows a "modal" display where one interactor is active when its data is to be displayed and all other interactors associated with the widget are disabled when their data is not displayed.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkCocoaRenderWindowInteractor.

Definition at line 110 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::Disable ( ) [inline, virtual]

Enable/Disable interactions. By default interactors are enabled when initialized. Initialize() must be called prior to enabling/disabling interaction. These methods are used when a window/widget is being shared by multiple renderers and interactors. This allows a "modal" display where one interactor is active when its data is to be displayed and all other interactors associated with the widget are disabled when their data is not displayed.

Reimplemented in vtkXRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkCocoaRenderWindowInteractor.

Definition at line 111 of file vtkRenderWindowInteractor.h.

Enable/Disable interactions. By default interactors are enabled when initialized. Initialize() must be called prior to enabling/disabling interaction. These methods are used when a window/widget is being shared by multiple renderers and interactors. This allows a "modal" display where one interactor is active when its data is to be displayed and all other interactors associated with the widget are disabled when their data is not displayed.

virtual void vtkRenderWindowInteractor::EnableRenderOn ( ) [virtual]

Enable/Disable whether vtkRenderWindowInteractor::Render() calls this->RenderWindow->Render().

virtual void vtkRenderWindowInteractor::EnableRenderOff ( ) [virtual]

Enable/Disable whether vtkRenderWindowInteractor::Render() calls this->RenderWindow->Render().

virtual void vtkRenderWindowInteractor::SetEnableRender ( bool  ) [virtual]

Enable/Disable whether vtkRenderWindowInteractor::Render() calls this->RenderWindow->Render().

virtual bool vtkRenderWindowInteractor::GetEnableRender ( ) [virtual]

Enable/Disable whether vtkRenderWindowInteractor::Render() calls this->RenderWindow->Render().

Set/Get the rendering window being controlled by this object.

Set/Get the rendering window being controlled by this object.

virtual void vtkRenderWindowInteractor::UpdateSize ( int  x,
int  y 
) [virtual]

Event loop notification member for window size change. Window size is measured in pixels.

Reimplemented in vtkXRenderWindowInteractor.

virtual int vtkRenderWindowInteractor::CreateTimer ( int  timerType) [virtual]

This class provides two groups of methods for manipulating timers. The first group (CreateTimer(timerType) and DestroyTimer()) implicitly use an internal timer id (and are present for backward compatibility). The second group (CreateRepeatingTimer(long),CreateOneShotTimer(long), ResetTimer(int),DestroyTimer(int)) use timer ids so multiple timers can be independently managed. In the first group, the CreateTimer() method takes an argument indicating whether the timer is created the first time (timerType==VTKI_TIMER_FIRST) or whether it is being reset (timerType==VTKI_TIMER_UPDATE). (In initial implementations of VTK this was how one shot and repeating timers were managed.) In the second group, the create methods take a timer duration argument (in milliseconds) and return a timer id. Thus the ResetTimer(timerId) and DestroyTimer(timerId) methods take this timer id and operate on the timer as appropriate. Methods are also available for determining

This class provides two groups of methods for manipulating timers. The first group (CreateTimer(timerType) and DestroyTimer()) implicitly use an internal timer id (and are present for backward compatibility). The second group (CreateRepeatingTimer(long),CreateOneShotTimer(long), ResetTimer(int),DestroyTimer(int)) use timer ids so multiple timers can be independently managed. In the first group, the CreateTimer() method takes an argument indicating whether the timer is created the first time (timerType==VTKI_TIMER_FIRST) or whether it is being reset (timerType==VTKI_TIMER_UPDATE). (In initial implementations of VTK this was how one shot and repeating timers were managed.) In the second group, the create methods take a timer duration argument (in milliseconds) and return a timer id. Thus the ResetTimer(timerId) and DestroyTimer(timerId) methods take this timer id and operate on the timer as appropriate. Methods are also available for determining

Create a repeating timer, with the specified duration (in milliseconds).

Returns:
the timer id.

Create a one shot timer, with the specified duretion (in milliseconds).

Returns:
the timer id.

Query whether the specified timerId is a one shot timer.

Returns:
1 if the timer is a one shot timer.

Get the duration (in milliseconds) for the specified timerId.

Reset the specified timer.

Destroy the timer specified by timerId.

Returns:
1 if the timer was destroyed.
virtual int vtkRenderWindowInteractor::GetVTKTimerId ( int  platformTimerId) [virtual]

Get the VTK timer ID that corresponds to the supplied platform ID.

virtual void vtkRenderWindowInteractor::SetTimerDuration ( unsigned  long) [virtual]

Specify the default timer interval (in milliseconds). (This is used in conjunction with the timer methods described previously, e.g., CreateTimer() uses this value; and CreateRepeatingTimer(duration) and CreateOneShotTimer(duration) use the default value if the parameter "duration" is less than or equal to zero.) Care must be taken when adjusting the timer interval from the default value of 10 milliseconds--it may adversely affect the interactors.

virtual unsigned long vtkRenderWindowInteractor::GetTimerDuration ( ) [virtual]

Specify the default timer interval (in milliseconds). (This is used in conjunction with the timer methods described previously, e.g., CreateTimer() uses this value; and CreateRepeatingTimer(duration) and CreateOneShotTimer(duration) use the default value if the parameter "duration" is less than or equal to zero.) Care must be taken when adjusting the timer interval from the default value of 10 milliseconds--it may adversely affect the interactors.

virtual void vtkRenderWindowInteractor::SetTimerEventId ( int  ) [virtual]

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

virtual void vtkRenderWindowInteractor::SetTimerEventType ( int  ) [virtual]

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. The caller of CreateTimerEvent sets up TimerEventId, TimerEventType and TimerEventDuration. The observer of CreateTimerEvent should set up an appropriate platform specific timer based on those values and set the TimerEventPlatformId before returning. The caller of DestroyTimerEvent sets up TimerEventPlatformId. The observer of DestroyTimerEvent should simply destroy the platform specific timer created by CreateTimerEvent. See vtkGenericRenderWindowInteractor's InternalCreateTimer and InternalDestroyTimer for an example.

virtual void vtkRenderWindowInteractor::TerminateApp ( void  ) [inline, virtual]

This function is called on 'q','e' keypress if exitmethod is not specified and should be overridden by platform dependent subclasses to provide a termination procedure if one is required.

Reimplemented in vtkWin32RenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkCocoaRenderWindowInteractor, and vtkXRenderWindowInteractor.

Definition at line 220 of file vtkRenderWindowInteractor.h.

External switching between joystick/trackball/new? modes. Initial value is a vtkInteractorStyleSwitch object.

External switching between joystick/trackball/new? modes. Initial value is a vtkInteractorStyleSwitch object.

Turn on/off the automatic repositioning of lights as the camera moves. Default is On.

Turn on/off the automatic repositioning of lights as the camera moves. Default is On.

Turn on/off the automatic repositioning of lights as the camera moves. Default is On.

Turn on/off the automatic repositioning of lights as the camera moves. Default is On.

Set/Get the desired update rate. This is used by vtkLODActor's to tell them how quickly they need to render. This update is in effect only when the camera is being rotated, or zoomed. When the interactor is still, the StillUpdateRate is used instead. The default is 15.

Set/Get the desired update rate. This is used by vtkLODActor's to tell them how quickly they need to render. This update is in effect only when the camera is being rotated, or zoomed. When the interactor is still, the StillUpdateRate is used instead. The default is 15.

Set/Get the desired update rate when movement has stopped. For the non-still update rate, see the SetDesiredUpdateRate method. The default is 0.0001

Set/Get the desired update rate when movement has stopped. For the non-still update rate, see the SetDesiredUpdateRate method. The default is 0.0001

See whether interactor has been initialized yet. Default is 0.

Set/Get the object used to perform pick operations. In order to pick instances of vtkProp, the picker must be a subclass of vtkAbstractPropPicker, meaning that it can identify a particular instance of vtkProp.

Set/Get the object used to perform pick operations. In order to pick instances of vtkProp, the picker must be a subclass of vtkAbstractPropPicker, meaning that it can identify a particular instance of vtkProp.

Create default picker. Used to create one when none is specified. Default is an instance of vtkPropPicker.

Set the picking manager. Set/Get the object used to perform operations through the interactor By default, a valid but disabled picking manager is instantiated.

Set the picking manager. Set/Get the object used to perform operations through the interactor By default, a valid but disabled picking manager is instantiated.

virtual void vtkRenderWindowInteractor::ExitCallback ( ) [virtual]

These methods correspond to the the Exit, User and Pick callbacks. They allow for the Style to invoke them.

Reimplemented in vtkWin32RenderWindowInteractor, vtkCarbonRenderWindowInteractor, and vtkCocoaRenderWindowInteractor.

virtual void vtkRenderWindowInteractor::UserCallback ( ) [virtual]

These methods correspond to the the Exit, User and Pick callbacks. They allow for the Style to invoke them.

These methods correspond to the the Exit, User and Pick callbacks. They allow for the Style to invoke them.

virtual void vtkRenderWindowInteractor::EndPickCallback ( ) [virtual]

These methods correspond to the the Exit, User and Pick callbacks. They allow for the Style to invoke them.

virtual void vtkRenderWindowInteractor::GetMousePosition ( int x,
int y 
) [inline, virtual]

Get the current position of the mouse.

Reimplemented in vtkXRenderWindowInteractor.

Definition at line 291 of file vtkRenderWindowInteractor.h.

Hide or show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to display a 3D cursor instead.

Hide or show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to display a 3D cursor instead.

virtual void vtkRenderWindowInteractor::Render ( ) [virtual]

Render the scene. Just pass the render call on to the associated vtkRenderWindow.

Given a position x, move the current camera's focal point to x. The movement is animated over the number of frames specified in NumberOfFlyFrames. The LOD desired frame rate is used.

void vtkRenderWindowInteractor::FlyTo ( vtkRenderer ren,
double x 
) [inline]

Given a position x, move the current camera's focal point to x. The movement is animated over the number of frames specified in NumberOfFlyFrames. The LOD desired frame rate is used.

Definition at line 309 of file vtkRenderWindowInteractor.h.

Given a position x, move the current camera's focal point to x. The movement is animated over the number of frames specified in NumberOfFlyFrames. The LOD desired frame rate is used.

void vtkRenderWindowInteractor::FlyToImage ( vtkRenderer ren,
double x 
) [inline]

Given a position x, move the current camera's focal point to x. The movement is animated over the number of frames specified in NumberOfFlyFrames. The LOD desired frame rate is used.

Definition at line 312 of file vtkRenderWindowInteractor.h.

Set the number of frames to fly to when FlyTo is invoked.

Set the number of frames to fly to when FlyTo is invoked.

virtual void vtkRenderWindowInteractor::SetDolly ( double  ) [virtual]

Set the total Dolly value to use when flying to (FlyTo()) a specified point. Negative values fly away from the point.

Set the total Dolly value to use when flying to (FlyTo()) a specified point. Negative values fly away from the point.

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

virtual void vtkRenderWindowInteractor::GetEventPosition ( int ,
int  
) [virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

virtual void vtkRenderWindowInteractor::GetEventPosition ( int  [2]) [virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

virtual void vtkRenderWindowInteractor::GetLastEventPosition ( int ,
int  
) [virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

virtual void vtkRenderWindowInteractor::GetLastEventPosition ( int  [2]) [virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

virtual void vtkRenderWindowInteractor::SetLastEventPosition ( int  ,
int   
) [virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

virtual void vtkRenderWindowInteractor::SetEventPosition ( int  x,
int  y 
) [inline, virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

Definition at line 338 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::SetEventPosition ( int  pos[2]) [inline, virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

Definition at line 352 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::SetEventPositionFlipY ( int  x,
int  y 
) [inline, virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

Definition at line 356 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::SetEventPositionFlipY ( int  pos[2]) [inline, virtual]

Set/Get information about the current event. The current x,y position is in the EventPosition, and the previous event position is in LastEventPosition, updated automatically each time EventPosition is set using its Set() method. Mouse positions are measured in pixels. The other information is about key board input.

Definition at line 360 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::SetAltKey ( int  ) [virtual]

Set/get whether alt modifier key was pressed.

Set/get whether alt modifier key was pressed.

virtual void vtkRenderWindowInteractor::SetControlKey ( int  ) [virtual]

Set/get whether control modifier key was pressed.

Set/get whether control modifier key was pressed.

virtual void vtkRenderWindowInteractor::SetShiftKey ( int  ) [virtual]

Set/get whether shift modifier key was pressed.

Set/get whether shift modifier key was pressed.

virtual void vtkRenderWindowInteractor::SetKeyCode ( char  ) [virtual]

Set/get the key code for the key that was pressed.

virtual char vtkRenderWindowInteractor::GetKeyCode ( ) [virtual]

Set/get the key code for the key that was pressed.

virtual void vtkRenderWindowInteractor::SetRepeatCount ( int  ) [virtual]

Set/get the repear count for the key or mouse event. This specifies how many times a key has been pressed.

Set/get the repear count for the key or mouse event. This specifies how many times a key has been pressed.

virtual void vtkRenderWindowInteractor::SetKeySym ( const char *  ) [virtual]

Set/get the key symbol for the key that was pressed. This is the key symbol as defined by the relevant X headers. On X based platforms this corresponds to the installed X sevrer, whereas on other platforms the native key codes are translated into a string representation.

virtual char* vtkRenderWindowInteractor::GetKeySym ( ) [virtual]

Set/get the key symbol for the key that was pressed. This is the key symbol as defined by the relevant X headers. On X based platforms this corresponds to the installed X sevrer, whereas on other platforms the native key codes are translated into a string representation.

void vtkRenderWindowInteractor::SetEventInformation ( int  x,
int  y,
int  ctrl = 0,
int  shift = 0,
char  keycode = 0,
int  repeatcount = 0,
const char *  keysym = 0 
) [inline]

Set all the event information in one call.

Definition at line 409 of file vtkRenderWindowInteractor.h.

void vtkRenderWindowInteractor::SetEventInformationFlipY ( int  x,
int  y,
int  ctrl = 0,
int  shift = 0,
char  keycode = 0,
int  repeatcount = 0,
const char *  keysym = 0 
) [inline]

Calls SetEventInformation, but flips the Y based on the current Size[1] value (i.e. y = this->Size[1] - y - 1).

Definition at line 436 of file vtkRenderWindowInteractor.h.

void vtkRenderWindowInteractor::SetKeyEventInformation ( int  ctrl = 0,
int  shift = 0,
char  keycode = 0,
int  repeatcount = 0,
const char *  keysym = 0 
) [inline]

Set all the keyboard-related event information in one call.

Definition at line 456 of file vtkRenderWindowInteractor.h.

virtual void vtkRenderWindowInteractor::SetSize ( int  ,
int   
) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

virtual int* vtkRenderWindowInteractor::GetSize ( ) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

virtual void vtkRenderWindowInteractor::GetSize ( int ,
int  
) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

virtual void vtkRenderWindowInteractor::GetSize ( int  [2]) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

virtual void vtkRenderWindowInteractor::SetEventSize ( int  ,
int   
) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

virtual void vtkRenderWindowInteractor::GetEventSize ( int ,
int  
) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

virtual void vtkRenderWindowInteractor::GetEventSize ( int  [2]) [virtual]

This methods sets the Size ivar of the interactor without actually changing the size of the window. Normally application programmers would use UpdateSize if anything. This is useful for letting someone else change the size of the rendering window and just letting the interactor know about the change. The current event width/height (if any) is in EventSize (Expose event, for example). Window size is measured in pixels.

When an event occurs, we must determine which Renderer the event occurred within, since one RenderWindow may contain multiple renderers.

Return the object used to mediate between vtkInteractorObservers contending for resources. Multiple interactor observers will often request different resources (e.g., cursor shape); the mediator uses a strategy to provide the resource based on priority of the observer plus the particular request (default versus non-default cursor shape).

virtual void vtkRenderWindowInteractor::SetUseTDx ( bool  ) [virtual]

Use a 3DConnexion device. Initial value is false. If VTK is not build with the TDx option, this is no-op. If VTK is build with the TDx option, and a device is not connected, a warning is emitted. It is must be called before the first Render to be effective, otherwise it is ignored.

virtual bool vtkRenderWindowInteractor::GetUseTDx ( ) [virtual]

Use a 3DConnexion device. Initial value is false. If VTK is not build with the TDx option, this is no-op. If VTK is build with the TDx option, and a device is not connected, a warning is emitted. It is must be called before the first Render to be effective, otherwise it is ignored.

virtual void vtkRenderWindowInteractor::MouseMoveEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::ExposeEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::ConfigureEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::EnterEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::LeaveEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::KeyPressEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::KeyReleaseEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::CharEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

virtual void vtkRenderWindowInteractor::ExitEvent ( ) [virtual]

Fire various events. SetEventInformation should be called just prior to calling any of these methods. These methods will Invoke the corresponding vtk event.

Create default pickingManager. Used to create one when none is specified. Default is an instance of vtkPickingManager.

void vtkRenderWindowInteractor::GrabFocus ( vtkCommand mouseEvents,
vtkCommand keypressEvents = NULL 
) [inline, protected]

These methods allow the interactor to control which events are processed. When the GrabFocus() method is called, then only events that the supplied vtkCommands have registered are invoked. (This method is typically used by widgets, i.e., subclasses of vtkInteractorObserver, to grab events once an event sequence begins.) Note that the friend declaration is done here to avoid doing so in the superclass vtkObject.

Definition at line 588 of file vtkRenderWindowInteractor.h.

void vtkRenderWindowInteractor::ReleaseFocus ( ) [inline, protected]

These methods allow the interactor to control which events are processed. When the GrabFocus() method is called, then only events that the supplied vtkCommands have registered are invoked. (This method is typically used by widgets, i.e., subclasses of vtkInteractorObserver, to grab events once an event sequence begins.) Note that the friend declaration is done here to avoid doing so in the superclass vtkObject.

Definition at line 590 of file vtkRenderWindowInteractor.h.

virtual int vtkRenderWindowInteractor::InternalCreateTimer ( int  timerId,
int  timerType,
unsigned long  duration 
) [protected, virtual]

Internal methods for creating and destroying timers that must be implemented by subclasses. InternalCreateTimer() returns a platform-specific timerId and InternalDestroyTimer() returns non-zero value on success.

Reimplemented in vtkXRenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkCocoaRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkGenericRenderWindowInteractor.

virtual int vtkRenderWindowInteractor::InternalDestroyTimer ( int  platformTimerId) [protected, virtual]

Internal methods for creating and destroying timers that must be implemented by subclasses. InternalCreateTimer() returns a platform-specific timerId and InternalDestroyTimer() returns non-zero value on success.

Reimplemented in vtkXRenderWindowInteractor, vtkCarbonRenderWindowInteractor, vtkWin32RenderWindowInteractor, vtkCocoaRenderWindowInteractor, vtkXRenderWindowTclInteractor, vtkXRenderWindowTclInteractor, and vtkGenericRenderWindowInteractor.

Internal methods for creating and destroying timers that must be implemented by subclasses. InternalCreateTimer() returns a platform-specific timerId and InternalDestroyTimer() returns non-zero value on success.


Friends And Related Function Documentation

friend class vtkInteractorEventRecorder [friend]

Definition at line 78 of file vtkRenderWindowInteractor.h.

friend class vtkInteractorObserver [friend]

These methods allow the interactor to control which events are processed. When the GrabFocus() method is called, then only events that the supplied vtkCommands have registered are invoked. (This method is typically used by widgets, i.e., subclasses of vtkInteractorObserver, to grab events once an event sequence begins.) Note that the friend declaration is done here to avoid doing so in the superclass vtkObject.

Definition at line 587 of file vtkRenderWindowInteractor.h.

friend struct vtkTimerStruct [friend]

Definition at line 601 of file vtkRenderWindowInteractor.h.


Member Data Documentation

Definition at line 538 of file vtkRenderWindowInteractor.h.

Definition at line 539 of file vtkRenderWindowInteractor.h.

Definition at line 542 of file vtkRenderWindowInteractor.h.

Definition at line 543 of file vtkRenderWindowInteractor.h.

Definition at line 549 of file vtkRenderWindowInteractor.h.

Definition at line 550 of file vtkRenderWindowInteractor.h.

Definition at line 551 of file vtkRenderWindowInteractor.h.

Definition at line 552 of file vtkRenderWindowInteractor.h.

Definition at line 553 of file vtkRenderWindowInteractor.h.

Definition at line 554 of file vtkRenderWindowInteractor.h.

Definition at line 555 of file vtkRenderWindowInteractor.h.

Definition at line 556 of file vtkRenderWindowInteractor.h.

Definition at line 559 of file vtkRenderWindowInteractor.h.

Definition at line 560 of file vtkRenderWindowInteractor.h.

Definition at line 561 of file vtkRenderWindowInteractor.h.

Definition at line 562 of file vtkRenderWindowInteractor.h.

Definition at line 563 of file vtkRenderWindowInteractor.h.

Definition at line 564 of file vtkRenderWindowInteractor.h.

Definition at line 565 of file vtkRenderWindowInteractor.h.

Definition at line 566 of file vtkRenderWindowInteractor.h.

Definition at line 567 of file vtkRenderWindowInteractor.h.

Definition at line 568 of file vtkRenderWindowInteractor.h.

Definition at line 569 of file vtkRenderWindowInteractor.h.

Definition at line 570 of file vtkRenderWindowInteractor.h.

Definition at line 571 of file vtkRenderWindowInteractor.h.

Definition at line 572 of file vtkRenderWindowInteractor.h.

Definition at line 575 of file vtkRenderWindowInteractor.h.

Definition at line 576 of file vtkRenderWindowInteractor.h.

Widget mediators are used to resolve contention for cursors and other resources.

Definition at line 597 of file vtkRenderWindowInteractor.h.

vtkTimerIdMap* vtkRenderWindowInteractor::TimerMap [protected]

Definition at line 602 of file vtkRenderWindowInteractor.h.

unsigned long vtkRenderWindowInteractor::TimerDuration [protected]

Definition at line 603 of file vtkRenderWindowInteractor.h.

Definition at line 618 of file vtkRenderWindowInteractor.h.

Definition at line 620 of file vtkRenderWindowInteractor.h.


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