20#ifndef vtkOpenVRInteractorStyle_h
21#define vtkOpenVRInteractorStyle_h
23#include "vtkRenderingOpenVRModule.h"
118 vtkSetMacro(HoverPick,
bool);
119 vtkGetMacro(HoverPick,
bool);
120 vtkBooleanMacro(HoverPick,
bool);
127 vtkSetMacro(GrabWithRay,
bool);
128 vtkGetMacro(GrabWithRay,
bool);
129 vtkBooleanMacro(GrabWithRay,
bool);
134 return this->InteractionState[
static_cast<int>(device)];
168 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
175 std::map<std::tuple<vtkCommand::EventIds, vtkEventDataAction>,
int>
InputMap;
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.
extended from vtkInteractorStyle3D to override command methods
virtual void EndDolly3D(vtkEventDataDevice3D *)
Interaction mode entry points.
static void MenuCallback(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
virtual void Clip(vtkEventDataDevice3D *)
Methods for intertaction.
~vtkOpenVRInteractorStyle() override
void HideRay(vtkEventDataDevice controller)
void ToggleDrawControls()
void ShowPickCell(vtkCell *cell, vtkProp3D *)
virtual void EndPositionProp(vtkEventDataDevice3D *)
Interaction mode entry points.
virtual void PositionProp(vtkEventData *, double *lwpos=nullptr, double *lwori=nullptr)
Methods for intertaction.
void AddTooltipForInput(vtkEventDataDevice device, vtkEventDataDeviceInput input)
Controls helpers drawing.
void ShowRay(vtkEventDataDevice controller)
void ProbeData(vtkEventDataDevice controller)
Methods for intertaction.
std::map< std::tuple< vtkCommand::EventIds, vtkEventDataAction >, int > InputMap
vtkNew< vtkActor > PickActor
void AddTooltipForInput(vtkEventDataDevice device, vtkEventDataDeviceInput input, const std::string &text)
Define the helper text that goes with an input, deprecated as open vr mostly provides it.
void OnPinch() override
Multitouch events binding.
vtkNew< vtkVRMenuRepresentation > MenuRepresentation
vtkNew< vtkTextActor3D > TextActor3D
void OnPan() override
Multitouch events binding.
static vtkOpenVRInteractorStyle * New()
virtual void StartClip(vtkEventDataDevice3D *)
Interaction mode entry points.
void OnRotate() override
Multitouch events binding.
vtkNew< vtkVRMenuWidget > Menu
vtkOpenVRInteractorStyle()
virtual void EndClip(vtkEventDataDevice3D *)
Interaction mode entry points.
virtual void StartDolly3D(vtkEventDataDevice3D *)
Interaction mode entry points.
int GetInteractionState(vtkEventDataDevice device)
void LoadNextCameraPose()
Methods for intertaction.
vtkNew< vtkVRHardwarePicker > HardwarePicker
void MapInputToAction(vtkCommand::EventIds eid, int state)
Map controller inputs to actions.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void EndPick(vtkEventDataDevice3D *)
Interaction mode entry points.
void OnMove3D(vtkEventData *edata) override
Override generic event bindings to call the corresponding action.
void EndAction(int VTKIS_STATE, vtkEventDataDevice3D *edata)
virtual void StartLoadCamPose(vtkEventDataDevice3D *)
Interaction mode entry points.
void OnViewerMovement3D(vtkEventData *edata) override
Override generic event bindings to call the corresponding action.
void ShowBillboard(const std::string &text)
void OnSelect3D(vtkEventData *edata) override
Override generic event bindings to call the corresponding action.
virtual void EndLoadCamPose(vtkEventDataDevice3D *)
Interaction mode entry points.
vtkNew< vtkSphereSource > Sphere
vtkCallbackCommand * MenuCommand
void StartAction(int VTKIS_STATE, vtkEventDataDevice3D *edata)
vtkVRMenuWidget * GetMenu()
void OnMenu3D(vtkEventData *edata) override
Override generic event bindings to call the corresponding action.
void SetDrawControls(bool)
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.
void OnNextPose3D(vtkEventData *edata) override
Override generic event bindings to call the corresponding action.
void MapInputToAction(vtkCommand::EventIds eid, vtkEventDataAction action, int state)
Map controller inputs to actions.
virtual void StartPick(vtkEventDataDevice3D *)
Interaction mode entry points.
virtual void StartPositionProp(vtkEventDataDevice3D *)
Interaction mode entry points.
bool HardwareSelect(vtkEventDataDevice controller, bool actorPassOnly)
void EndPickCallback(vtkSelection *sel)
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.
pick an actor/prop given a controller position and orientation
vtkEventDataDevice
platform-independent event data structures
const int vtkEventDataNumberOfDevices
const int vtkEventDataNumberOfInputs