20 #ifndef vtkOpenVRInteractorStyle_h
21 #define vtkOpenVRInteractorStyle_h
23 #include "vtkRenderingOpenVRModule.h"
113 vtkSetMacro(HoverPick,
bool);
114 vtkGetMacro(HoverPick,
bool);
115 vtkBooleanMacro(HoverPick,
bool);
122 vtkSetMacro(GrabWithRay,
bool);
123 vtkGetMacro(GrabWithRay,
bool);
124 vtkBooleanMacro(GrabWithRay,
bool);
129 return this->InteractionState[
static_cast<int>(device)];
163 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
supports function callbacks
abstract class to specify cell behavior
a simple class to control print indentation
extends interaction to support 3D input
abstract base class for most VTK objects
Tooltip helper explaining controls Helper class to draw one tooltip per button around the controller.
pick an actor/prop given a controller position and orientation
extended from vtkInteractorStyle3D to override command methods
virtual void EndDolly3D(vtkEventDataDevice3D *)
static void MenuCallback(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
virtual void Clip(vtkEventDataDevice3D *)
~vtkOpenVRInteractorStyle() override
void OnButton3D(vtkEventData *edata) override
Override generic event bindings to call the corresponding action.
void HideRay(vtkEventDataDevice controller)
void ToggleDrawControls()
void ShowPickCell(vtkCell *cell, vtkProp3D *)
vtkNew< vtkOpenVRMenuRepresentation > MenuRepresentation
virtual void EndPositionProp(vtkEventDataDevice3D *)
void AddTooltipForInput(vtkEventDataDevice device, vtkEventDataDeviceInput input)
Controls helpers drawing.
void ShowRay(vtkEventDataDevice controller)
void ProbeData(vtkEventDataDevice controller)
Methods for intertaction.
vtkNew< vtkActor > PickActor
void AddTooltipForInput(vtkEventDataDevice device, vtkEventDataDeviceInput input, const std::string &text)
Define the helper text that goes with an input.
vtkNew< vtkTextActor3D > TextActor3D
vtkNew< vtkOpenVRHardwarePicker > HardwarePicker
void OnPan() override
Multitouch events binding.
virtual void StartClip(vtkEventDataDevice3D *)
vtkOpenVRInteractorStyle()
virtual void EndClip(vtkEventDataDevice3D *)
virtual void StartDolly3D(vtkEventDataDevice3D *)
int GetInteractionState(vtkEventDataDevice device)
void LoadNextCameraPose()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkOpenVRInteractorStyle * New()
virtual void EndPick(vtkEventDataDevice3D *)
void OnMove3D(vtkEventData *edata) override
Generic 3D event bindings can be overridden in subclasses.
void EndAction(int VTKIS_STATE, vtkEventDataDevice3D *edata)
virtual void StartLoadCamPose(vtkEventDataDevice3D *)
void ShowBillboard(const std::string &text)
virtual void PositionProp(vtkEventData *)
virtual void EndLoadCamPose(vtkEventDataDevice3D *)
void MapInputToAction(vtkEventDataDevice device, vtkEventDataDeviceInput input, int state)
Map controller inputs to actions.
vtkNew< vtkSphereSource > Sphere
vtkCallbackCommand * MenuCommand
void StartAction(int VTKIS_STATE, vtkEventDataDevice3D *edata)
void SetDrawControls(bool)
vtkOpenVRMenuWidget * GetMenu()
void UpdateRay(vtkEventDataDevice controller)
void ShowPickSphere(double *pos, double radius, vtkProp3D *)
void SetInteractor(vtkRenderWindowInteractor *iren) override
Set/Get the Interactor wrapper being controlled by this object.
virtual void StartPick(vtkEventDataDevice3D *)
Interaction mode entry points.
virtual void StartPositionProp(vtkEventDataDevice3D *)
bool HardwareSelect(vtkEventDataDevice controller, bool actorPassOnly)
void EndPickCallback(vtkSelection *sel)
vtkNew< vtkOpenVRMenuWidget > Menu
perform various plane computations
represents an 3D object for placement in a rendered scene
platform-independent render window interaction including picking and frame rate control.
data object that represents a "selection" in VTK.
create a polygonal sphere centered at the origin
An actor that displays text.
vtkEventDataDevice
platform-independent event data structures
const int vtkEventDataNumberOfDevices
const int vtkEventDataNumberOfInputs