Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
QVTKInteractor Class Reference


#include <QVTKInteractor.h>

Inheritance diagram for QVTKInteractor:
Collaboration diagram for QVTKInteractor:

Public Types

enum  vtkCustomEvents {
  ContextMenuEvent = vtkCommand::UserEvent + 100, DragEnterEvent, DragMoveEvent, DragLeaveEvent,
 Enum for additional event types supported. More...
typedef vtkRenderWindowInteractor Superclass
- Public Types inherited from vtkRenderWindowInteractor
enum  { OneShotTimer = 1, RepeatingTimer }
typedef vtkObject Superclass

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class. More...
QVTKInteractorNewInstance () const
void TerminateApp () override
 Overloaded terminate app, which does nothing in Qt. More...
void Start () override
 Overloaded start method does nothing. More...
void Initialize () override
 Prepare for handling events and set the Enabled flag to true. More...
virtual void StartListening ()
 Start listening events on 3DConnexion device. More...
virtual void StopListening ()
 Stop listening events on 3DConnexion device. More...
virtual void TimerEvent (int timerId)
 timer event slot More...
- Public Member Functions inherited from vtkRenderWindowInteractor
vtkRenderWindowInteractorNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
void ReInitialize ()
void UnRegister (vtkObjectBase *o) override
 This Method detects loops of RenderWindow-Interactor, so objects are freed properly. More...
virtual void ProcessEvents ()
 Run the event loop and return. More...
virtual bool GetDone ()
 Is the interactor loop done. More...
virtual void SetDone (bool)
virtual void Enable ()
 Enable/Disable interactions. More...
virtual void Disable ()
virtual int GetEnabled ()
virtual void EnableRenderOn ()
 Enable/Disable whether vtkRenderWindowInteractor::Render() calls this->RenderWindow->Render(). More...
virtual void EnableRenderOff ()
virtual void SetEnableRender (bool)
virtual bool GetEnableRender ()
void SetRenderWindow (vtkRenderWindow *aren)
 Set/Get the rendering window being controlled by this object. More...
virtual vtkRenderWindowGetRenderWindow ()
virtual void UpdateSize (int x, int y)
 Event loop notification member for window size change. More...
virtual int CreateTimer (int timerType)
 This class provides two groups of methods for manipulating timers. More...
virtual int DestroyTimer ()
int CreateRepeatingTimer (unsigned long duration)
 Create a repeating timer, with the specified duration (in milliseconds). More...
int CreateOneShotTimer (unsigned long duration)
 Create a one shot timer, with the specified duretion (in milliseconds). More...
int IsOneShotTimer (int timerId)
 Query whether the specified timerId is a one shot timer. More...
unsigned long GetTimerDuration (int timerId)
 Get the duration (in milliseconds) for the specified timerId. More...
int ResetTimer (int timerId)
 Reset the specified timer. More...
int DestroyTimer (int timerId)
 Destroy the timer specified by timerId. More...
virtual int GetVTKTimerId (int platformTimerId)
 Get the VTK timer ID that corresponds to the supplied platform ID. More...
virtual void SetTimerDuration (unsigned long)
 Specify the default timer interval (in milliseconds). More...
virtual unsigned long GetTimerDuration ()
virtual void SetTimerEventId (int)
 These methods are used to communicate information about the currently firing CreateTimerEvent or DestroyTimerEvent. More...
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 *)
 External switching between joystick/trackball/new? modes. More...
virtual vtkInteractorObserverGetInteractorStyle ()
virtual void SetLightFollowCamera (vtkTypeBool)
 Turn on/off the automatic repositioning of lights as the camera moves. More...
virtual vtkTypeBool GetLightFollowCamera ()
virtual void LightFollowCameraOn ()
virtual void LightFollowCameraOff ()
virtual void SetDesiredUpdateRate (double)
 Set/Get the desired update rate. More...
virtual double GetDesiredUpdateRate ()
virtual void SetStillUpdateRate (double)
 Set/Get the desired update rate when movement has stopped. More...
virtual double GetStillUpdateRate ()
virtual int GetInitialized ()
 See whether interactor has been initialized yet. More...
virtual void SetPicker (vtkAbstractPicker *)
 Set/Get the object used to perform pick operations. More...
virtual vtkAbstractPickerGetPicker ()
virtual vtkAbstractPropPickerCreateDefaultPicker ()
 Create default picker. More...
virtual void SetPickingManager (vtkPickingManager *)
 Set the picking manager. More...
virtual vtkPickingManagerGetPickingManager ()
virtual void ExitCallback ()
 These methods correspond to the Exit, User and Pick callbacks. More...
virtual void UserCallback ()
virtual void StartPickCallback ()
virtual void EndPickCallback ()
virtual void GetMousePosition (int *x, int *y)
 Get the current position of the mouse. More...
void HideCursor ()
 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. More...
void ShowCursor ()
virtual void Render ()
 Render the scene. More...
void FlyTo (vtkRenderer *ren, double x, double y, double z)
 Given a position x, move the current camera's focal point to x. More...
void FlyTo (vtkRenderer *ren, double *x)
void FlyToImage (vtkRenderer *ren, double x, double y)
void FlyToImage (vtkRenderer *ren, double *x)
virtual void SetNumberOfFlyFrames (int)
 Set the number of frames to fly to when FlyTo is invoked. More...
virtual int GetNumberOfFlyFrames ()
virtual void SetDolly (double)
 Set the total Dolly value to use when flying to (FlyTo()) a specified point. More...
virtual double GetDolly ()
virtual int * GetEventPosition ()
 Set/Get information about the current event. More...
virtual void GetEventPosition (int &, int &)
virtual void GetEventPosition (int[2])
virtual int * GetLastEventPosition ()
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 int * GetEventPositions (int pointerIndex)
virtual int * GetLastEventPositions (int pointerIndex)
virtual void SetEventPosition (int x, int y, int pointerIndex)
virtual void SetEventPosition (int pos[2], int pointerIndex)
virtual void SetEventPositionFlipY (int x, int y, int pointerIndex)
virtual void SetEventPositionFlipY (int pos[2], int pointerIndex)
virtual void SetAltKey (int)
 Set/get whether alt modifier key was pressed. More...
virtual int GetAltKey ()
virtual void SetControlKey (int)
 Set/get whether control modifier key was pressed. More...
virtual int GetControlKey ()
virtual void SetShiftKey (int)
 Set/get whether shift modifier key was pressed. More...
virtual int GetShiftKey ()
virtual void SetKeyCode (char)
 Set/get the key code for the key that was pressed. More...
virtual char GetKeyCode ()
virtual void SetRepeatCount (int)
 Set/get the repear count for the key or mouse event. More...
virtual int GetRepeatCount ()
virtual void SetKeySym (const char *)
 Set/get the key symbol for the key that was pressed. More...
virtual char * GetKeySym ()
virtual void SetPointerIndex (int)
 Set/get the index of the most recent pointer to have an event. More...
virtual int GetPointerIndex ()
void SetRotation (double val)
 Set/get the rotation for the gesture in degrees, update LastRotation. More...
virtual double GetRotation ()
virtual double GetLastRotation ()
void SetScale (double val)
 Set/get the scale for the gesture, updates LastScale. More...
virtual double GetScale ()
virtual double GetLastScale ()
void SetTranslation (double val[2])
 Set/get the translation for pan/swipe gestures, update LastTranslation. More...
virtual double * GetTranslation ()
virtual void GetTranslation (double &, double &)
virtual void GetTranslation (double[2])
virtual double * GetLastTranslation ()
virtual void GetLastTranslation (double &, double &)
virtual void GetLastTranslation (double[2])
void SetEventInformation (int x, int y, int ctrl, int shift, char keycode, int repeatcount, const char *keysym, int pointerIndex)
 Set all the event information in one call. More...
void SetEventInformation (int x, int y, int ctrl=0, int shift=0, char keycode=0, int repeatcount=0, const char *keysym=nullptr)
void SetEventInformationFlipY (int x, int y, int ctrl, int shift, char keycode, int repeatcount, const char *keysym, int pointerIndex)
 Calls SetEventInformation, but flips the Y based on the current Size[1] value (i.e. More...
void SetEventInformationFlipY (int x, int y, int ctrl=0, int shift=0, char keycode=0, int repeatcount=0, const char *keysym=nullptr)
void SetKeyEventInformation (int ctrl=0, int shift=0, char keycode=0, int repeatcount=0, const char *keysym=nullptr)
 Set all the keyboard-related event information in one call. More...
virtual void SetSize (int, int)
 This methods sets the Size ivar of the interactor without actually changing the size of the window. More...
void SetSize (int[2])
virtual int * GetSize ()
virtual void GetSize (int &, int &)
virtual void GetSize (int[2])
virtual void SetEventSize (int, int)
void SetEventSize (int[2])
virtual int * GetEventSize ()
virtual void GetEventSize (int &, int &)
virtual void GetEventSize (int[2])
virtual vtkRendererFindPokedRenderer (int, int)
 When an event occurs, we must determine which Renderer the event occurred within, since one RenderWindow may contain multiple renderers. More...
vtkObserverMediatorGetObserverMediator ()
 Return the object used to mediate between vtkInteractorObservers contending for resources. More...
virtual void SetUseTDx (bool)
 Use a 3DConnexion device. More...
virtual bool GetUseTDx ()
virtual void MouseMoveEvent ()
 Fire various events. More...
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 ()
virtual void FourthButtonPressEvent ()
virtual void FourthButtonReleaseEvent ()
virtual void FifthButtonPressEvent ()
virtual void FifthButtonReleaseEvent ()
virtual void StartPinchEvent ()
 Fire various gesture based events. More...
virtual void PinchEvent ()
virtual void EndPinchEvent ()
virtual void StartRotateEvent ()
virtual void RotateEvent ()
virtual void EndRotateEvent ()
virtual void StartPanEvent ()
virtual void PanEvent ()
virtual void EndPanEvent ()
virtual void TapEvent ()
virtual void LongTapEvent ()
virtual void SwipeEvent ()
virtual void SetRecognizeGestures (bool)
 Convert multitouch events into gestures. More...
virtual bool GetRecognizeGestures ()
virtual int GetPointersDownCount ()
 When handling gestures you can query this value to determine how many pointers are down for the gesture this is useful for pan gestures for example. More...
void ClearContact (size_t contactID)
 Most multitouch systems use persistent contact/pointer ids to track events/motion during multitouch events. More...
int GetPointerIndexForContact (size_t contactID)
int GetPointerIndexForExistingContact (size_t contactID)
bool IsPointerIndexSet (int i)
void ClearPointerIndex (int i)
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
virtual void DebugOn ()
 Turn debugging output on. More...
virtual void DebugOff ()
 Turn debugging output off. More...
bool GetDebug ()
 Get the value of the debug flag. More...
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
virtual void Modified ()
 Update the modification time for this object. More...
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
vtkCommandGetCommand (unsigned long tag)
void RemoveObserver (vtkCommand *)
void RemoveObservers (unsigned long event, vtkCommand *)
void RemoveObservers (const char *event, vtkCommand *)
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
vtkTypeBool HasObserver (const char *event, vtkCommand *)
void RemoveObserver (unsigned long tag)
void RemoveObservers (unsigned long event)
void RemoveObservers (const char *event)
void RemoveAllObservers ()
vtkTypeBool HasObserver (unsigned long event)
vtkTypeBool HasObserver (const char *event)
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method. More...
int InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
int InvokeEvent (const char *event, void *callData)
int InvokeEvent (unsigned long event)
int InvokeEvent (const char *event)
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
virtual void Delete ()
 Delete a VTK object. More...
virtual void FastDelete ()
 Delete a reference to this object. More...
void InitializeObjectBase ()
void Print (ostream &os)
 Print an object to an ostream. More...
virtual void PrintHeader (ostream &os, vtkIndent indent)
virtual void PrintTrailer (ostream &os, vtkIndent indent)
virtual void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
int GetReferenceCount ()
 Return the current reference count of this object. More...
void SetReferenceCount (int)
 Sets the reference count. More...
void PrintRevisions (ostream &)
 Legacy. More...

Static Public Member Functions

static QVTKInteractorNew ()
static vtkTypeBool IsTypeOf (const char *type)
static QVTKInteractorSafeDownCast (vtkObjectBase *o)
- Static Public Member Functions inherited from vtkRenderWindowInteractor
static vtkRenderWindowInteractorNew ()
static vtkTypeBool IsTypeOf (const char *type)
static vtkRenderWindowInteractorSafeDownCast (vtkObjectBase *o)
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
static void SetGlobalWarningDisplay (int val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
static void GlobalWarningDisplayOn ()
static void GlobalWarningDisplayOff ()
static int GetGlobalWarningDisplay ()
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class. More...
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 QVTKInteractor ()
 ~QVTKInteractor () override
int InternalCreateTimer (int timerId, int timerType, unsigned long duration) override
 Internal methods for creating and destroying timers that must be implemented by subclasses. More...
int InternalDestroyTimer (int platformTimerId) override
- Protected Member Functions inherited from vtkRenderWindowInteractor
 vtkRenderWindowInteractor ()
 ~vtkRenderWindowInteractor () override
virtual vtkPickingManagerCreateDefaultPickingManager ()
 Create default pickingManager. More...
void GrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
void ReleaseFocus ()
int GetCurrentTimerId ()
virtual void StartEventLoop ()
 Run the event loop (does not return until TerminateApp is called). More...
virtual void RecognizeGesture (vtkCommand::EventIds)
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 ~vtkObject () override
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events. More...
void InternalReleaseFocus ()
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
virtual ~vtkObjectBase ()
virtual void CollectRevisions (ostream &)
virtual void ReportReferences (vtkGarbageCollector *)
 vtkObjectBase (const vtkObjectBase &)
void operator= (const vtkObjectBase &)

Additional Inherited Members

- Protected Attributes inherited from vtkRenderWindowInteractor
bool Done
int Initialized
int Enabled
bool EnableRender
int Style
vtkTypeBool LightFollowCamera
int ActorMode
double DesiredUpdateRate
double StillUpdateRate
int AltKey
int ControlKey
int ShiftKey
char KeyCode
double Rotation
double LastRotation
double Scale
double LastScale
double Translation [2]
double LastTranslation [2]
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 EventPositions [VTKI_MAX_POINTERS][2]
int LastEventPositions [VTKI_MAX_POINTERS][2]
int PointerIndex
size_t PointerIndexLookup [VTKI_MAX_POINTERS]
int NumberOfFlyFrames
double Dolly
 Widget mediators are used to resolve contention for cursors and other resources. More...
vtkTimerIdMap * TimerMap
unsigned long TimerDuration
int HandleEventLoop
bool UseTDx
bool RecognizeGestures
int PointersDownCount
int PointersDown [VTKI_MAX_POINTERS]
int StartingEventPositions [VTKI_MAX_POINTERS][2]
vtkCommand::EventIds CurrentGesture
- Protected Attributes inherited from vtkObject
bool Debug
vtkTimeStamp MTime
vtkSubjectHelper * SubjectHelper
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
vtkWeakPointerBase ** WeakPointers

Detailed Description

QVTKInteractor handles relaying Qt events to VTK.

See also

Definition at line 58 of file QVTKInteractor.h.

Member Typedef Documentation

◆ Superclass

Definition at line 62 of file QVTKInteractor.h.

Member Enumeration Documentation

◆ vtkCustomEvents

Enum for additional event types supported.

These events can be picked up by command observers on the interactor.


Definition at line 68 of file QVTKInteractor.h.

Constructor & Destructor Documentation

◆ QVTKInteractor()

QVTKInteractor::QVTKInteractor ( )

◆ ~QVTKInteractor()

QVTKInteractor::~QVTKInteractor ( )

Member Function Documentation

◆ New()

static QVTKInteractor* QVTKInteractor::New ( )

◆ IsTypeOf()

static vtkTypeBool QVTKInteractor::IsTypeOf ( const char *  type)

◆ IsA()

virtual vtkTypeBool QVTKInteractor::IsA ( const char *  name)

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 vtkRenderWindowInteractor.

◆ SafeDownCast()

static QVTKInteractor* QVTKInteractor::SafeDownCast ( vtkObjectBase o)

◆ NewInstanceInternal()

virtual vtkObjectBase* QVTKInteractor::NewInstanceInternal ( ) const

Reimplemented from vtkRenderWindowInteractor.

◆ NewInstance()

QVTKInteractor* QVTKInteractor::NewInstance ( ) const

◆ TerminateApp()

void QVTKInteractor::TerminateApp ( )

Overloaded terminate app, which does nothing in Qt.

Use qApp->exit() instead.

Reimplemented from vtkRenderWindowInteractor.

◆ Start()

void QVTKInteractor::Start ( )

Overloaded start method does nothing.

Use qApp->exec() instead.

Reimplemented from vtkRenderWindowInteractor.

◆ Initialize()

void QVTKInteractor::Initialize ( )

Prepare for handling events and set the Enabled flag to true.

This will be called automatically by Start() if the interactor is not initialized, but it can be called manually if you need to perform any operations between initialization and the start of the event loop.

Reimplemented from vtkRenderWindowInteractor.

◆ StartListening()

virtual void QVTKInteractor::StartListening ( )

Start listening events on 3DConnexion device.

◆ StopListening()

virtual void QVTKInteractor::StopListening ( )

Stop listening events on 3DConnexion device.

◆ TimerEvent()

virtual void QVTKInteractor::TimerEvent ( int  timerId)

timer event slot

◆ InternalCreateTimer()

int QVTKInteractor::InternalCreateTimer ( int  timerId,
int  timerType,
unsigned long  duration 

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 from vtkRenderWindowInteractor.

◆ InternalDestroyTimer()

int QVTKInteractor::InternalDestroyTimer ( int  platformTimerId)

Reimplemented from vtkRenderWindowInteractor.

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