29 #ifndef vtkOpenVRRenderWindowInteractor_h
30 #define vtkOpenVRRenderWindowInteractor_h
33 #include "vtkRenderingOpenVRModule.h"
115 double wxyz[4],
double ppos[3],
double wdir[3]);
139 static void (*ClassExitMethod)(
void*);
140 static void (*ClassExitMethodArgDelete)(
void*);
165 int DeviceInputDownCount[2];
a virtual camera for 3D rendering
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
implements OpenVR specific functions required by vtkRenderWindowInteractor.
static void SetClassExitMethodArgDelete(void(*f)(void *))
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual double * GetPhysicalTranslation(vtkCamera *)
virtual int InternalDestroyTimer(int platformTimerId)
void ConvertOpenVRPoseToMatrices(const vr::TrackedDevicePose_t &tdPose, vtkMatrix4x4 *poseMatrixWorld, vtkMatrix4x4 *poseMatrixPhysical=nullptr)
void ConvertPoseToWorldCoordinates(const vr::TrackedDevicePose_t &tdPose, double pos[3], double wxyz[4], double ppos[3], double wdir[3])
virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration)
Win32-specific internal timer methods.
void GetTouchPadPosition(vtkEventDataDevice, vtkEventDataDeviceInput, float[3]) override
Get the latest touchpad or joystick position for a device.
vtkEventDataDevice GetPointerDevice()
virtual void RecognizeComplexGesture(vtkEventDataDevice3D *edata)
virtual void StartEventLoop()
This will start up the event loop and never return.
vtkOpenVRRenderWindowInteractor()
static void SetClassExitMethod(void(*f)(void *), void *arg)
Methods to set the default exit method for the class.
virtual void SetPhysicalScale(double)
virtual void Initialize()
Initialize the event handler.
virtual void ExitCallback()
These methods correspond to the Exit, User and Pick callbacks.
static vtkOpenVRRenderWindowInteractor * New()
Construct object so that light follows camera motion.
static void * ClassExitMethodArg
void ProcessEvents() override
Run the event loop and return.
void GetStartingPhysicalToWorldMatrix(vtkMatrix4x4 *startingPhysicalToWorldMatrix)
virtual double GetPhysicalScale()
vtkNew< vtkMatrix4x4 > StartingPhysicalToWorldMatrix
Store physical to world matrix at the start of a multi-touch gesture.
~vtkOpenVRRenderWindowInteractor() override
virtual void SetPhysicalTranslation(vtkCamera *, double, double, double)
Set/Get the optional translation to map world coordinates into the 3D physical space (meters,...
virtual void DoOneEvent(vtkOpenVRRenderWindow *renWin, vtkRenderer *ren)
adds support for 3D events to vtkRenderWindowInteractor.
abstract specification for renderers
vtkEventDataDevice
platform-independent event data structures
#define VTKI_MAX_POINTERS