101 #ifndef vtkInteractorStyle_h
102 #define vtkInteractorStyle_h
105 #include "vtkRenderingCoreModule.h"
109 #define VTKIS_START 0
112 #define VTKIS_ROTATE 1
115 #define VTKIS_DOLLY 4
117 #define VTKIS_USCALE 6
118 #define VTKIS_TIMER 7
119 #define VTKIS_FORWARDFLY 8
120 #define VTKIS_REVERSEFLY 9
121 #define VTKIS_TWO_POINTER 10
122 #define VTKIS_CLIP 11
123 #define VTKIS_PICK 12 // perform a pick at the last location
124 #define VTKIS_LOAD_CAMERA_POSE 13 // iterate through saved camera poses
125 #define VTKIS_POSITION_PROP 14 // adjust the position, orientation of a prop
126 #define VTKIS_EXIT 15 // call exit callback
127 #define VTKIS_TOGGLE_DRAW_CONTROLS 16 // draw device controls helpers
128 #define VTKIS_MENU 17 // invoke an application menu
129 #define VTKIS_GESTURE 18 // touch interaction in progress
130 #define VTKIS_ENV_ROTATE 19 // rotate the renderer environment texture
131 #define VTKIS_GROUNDMOVEMENT 20 // horizontal movement according to the 4 directions
132 #define VTKIS_ELEVATION 21 // vertical movement (up and down)
134 #define VTKIS_ANIM_OFF 0
135 #define VTKIS_ANIM_ON 1
186 vtkSetClampMacro(AutoAdjustCameraClippingRange,
vtkTypeBool, 0, 1);
187 vtkGetMacro(AutoAdjustCameraClippingRange,
vtkTypeBool);
188 vtkBooleanMacro(AutoAdjustCameraClippingRange,
vtkTypeBool);
196 void FindPokedRenderer(
int,
int);
202 vtkGetMacro(State,
int);
221 vtkSetClampMacro(TimerDuration,
unsigned long, 1, 100000);
222 vtkGetMacro(TimerDuration,
unsigned long);
308 virtual void OnTimer();
346 virtual void StartState(
int newstate);
347 virtual void StopState();
354 virtual void StartAnimate();
355 virtual void StopAnimate();
356 virtual void StartRotate();
357 virtual void EndRotate();
358 virtual void StartZoom();
359 virtual void EndZoom();
360 virtual void StartPan();
361 virtual void EndPan();
362 virtual void StartSpin();
363 virtual void EndSpin();
364 virtual void StartDolly();
365 virtual void EndDolly();
366 virtual void StartUniformScale();
367 virtual void EndUniformScale();
368 virtual void StartTimer();
369 virtual void EndTimer();
370 virtual void StartTwoPointer();
371 virtual void EndTwoPointer();
372 virtual void StartGesture();
373 virtual void EndGesture();
374 virtual void StartEnvRotate();
375 virtual void EndEnvRotate();
400 virtual void HighlightProp(
vtkProp* prop);
401 virtual void HighlightActor2D(
vtkActor2D* actor2D);
402 virtual void HighlightProp3D(
vtkProp3D* prop3D);
410 vtkSetVector3Macro(PickColor,
double);
411 vtkGetVectorMacro(PickColor,
double, 3);
420 vtkSetMacro(MouseWheelMotionFactor,
double);
421 vtkGetMacro(MouseWheelMotionFactor,
double);
436 void DelegateTDxEvent(
unsigned long event,
void* calldata);
446 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
a simple event forwarder command
virtual void OnLeftButtonDoubleClick()
virtual void OnLeftButtonDown()
virtual void Rotate()
These methods for the different interactions in different modes are overridden in subclasses to perfo...
abstract superclass for all actors, volumes and annotations
virtual void SetInteractor(vtkRenderWindowInteractor *iren)
This method is used to associate the widget with the render window interactor.
virtual void OnDropFiles(vtkStringArray *vtkNotUsed(filePaths))
When files are dropped on the render window.
virtual void OnMouseWheelRight()
virtual void OnMiddleButtonDown()
double MouseWheelMotionFactor
virtual void OnRightButtonDown()
represents an object (geometry & properties) in a rendered scene
abstract base class for most VTK objects
virtual void OnClip3D(vtkEventData *)
virtual void OnButton3D(vtkEventData *)
virtual void OnLeftButtonUp()
static void ProcessEvents(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
Handles the char widget activation event.
virtual void OnMiddleButtonUp()
virtual void OnEndPinch()
virtual void OnFifthButtonUp()
a actor that draws 2D data
virtual void OnPositionProp3D(vtkEventData *)
virtual void SetEnabled(int)
Methods for turning the interactor observer on and off, and determining its state.
virtual void UniformScale()
a vtkAbstractArray subclass for strings
abstract specification for renderers
virtual void OnMouseWheelLeft()
virtual void OnMouseWheelForward()
represents an 3D object for placement in a rendered scene
virtual void OnKeyRelease()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void OnKeyPress()
an abstract superclass for classes observing events invoked by vtkRenderWindowInteractor ...
vtkPolyDataMapper * OutlineMapper
virtual void OnRightButtonUp()
platform-independent render window interaction including picking and frame rate control.
virtual void OnMiddleButtonDoubleClick()
vtkEventForwarderCommand * EventForwarder
virtual void OnExpose()
These are more esoteric events, but are useful in some cases.
supports function callbacks
vtkActor2D * PickedActor2D
virtual void OnMove3D(vtkEventData *)
Generic 3D event bindings can be overridden in subclasses.
virtual void OnRightButtonDoubleClick()
virtual void OnConfigure()
virtual void OnSelect3D(vtkEventData *)
a simple class to control print indentation
virtual void OnMouseWheelBackward()
unsigned long TimerDuration
virtual void OnStartPinch()
create wireframe outline around bounding box
vtkTypeBool HandleObservers
virtual void OnEndSwipe()
virtual void OnDropLocation(double *vtkNotUsed(position))
When the mouse location is updated while dragging files.
vtkTypeBool AutoAdjustCameraClippingRange
virtual void OnStartPan()
virtual void OnMenu3D(vtkEventData *)
vtkRenderer * PickedRenderer
provide 3DConnexion device event-driven interface to the rendering window
virtual void OnFifthButtonDown()
map vtkPolyData to graphics primitives
virtual void OnNextPose3D(vtkEventData *)
virtual void OnStartSwipe()
gesture based events
virtual void OnStartRotate()
virtual void OnPick3D(vtkEventData *)
provide event-driven interface to the rendering window (defines trackball mode)
virtual void OnElevation3D(vtkEventData *)
virtual void OnViewerMovement3D(vtkEventData *)
virtual void OnChar()
Sets up the keypress-i event.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual void OnEndRotate()
virtual void OnFourthButtonDown()
virtual void EnvironmentRotate()
virtual void OnMouseMove()
Generic event bindings can be overridden in subclasses.
virtual void OnFourthButtonUp()
vtkOutlineSource * Outline
vtkTDxInteractorStyle * TDxStyle