VTK  9.5.2
vtkInteractorStyleJoystickActor.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
21
22#ifndef vtkInteractorStyleJoystickActor_h
23#define vtkInteractorStyleJoystickActor_h
24
25#include "vtkInteractionStyleModule.h" // For export macro
26#include "vtkInteractorStyle.h"
27#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
28
29VTK_ABI_NAMESPACE_BEGIN
30class vtkCellPicker;
31
32// motion flags
33
34class VTKINTERACTIONSTYLE_EXPORT VTK_MARSHALAUTO vtkInteractorStyleJoystickActor
35 : public vtkInteractorStyle
36{
37public:
39
41 void PrintSelf(ostream& os, vtkIndent indent) override;
42
44
48 void OnMouseMove() override;
49 void OnLeftButtonDown() override;
50 void OnLeftButtonUp() override;
51 void OnMiddleButtonDown() override;
52 void OnMiddleButtonUp() override;
53 void OnRightButtonDown() override;
54 void OnRightButtonUp() override;
56
57 // These methods for the different interactions in different modes
58 // are overridden in subclasses to perform the correct motion. Since
59 // they might be called from OnTimer, they do not have mouse coord parameters
60 // (use interactor's GetEventPosition and GetLastEventPosition)
61 void Rotate() override;
62 void Spin() override;
63 void Pan() override;
64 void Dolly() override;
65 void UniformScale() override;
66
67protected:
70
71 void FindPickedActor(int x, int y);
72
74 vtkProp3D* prop3D, double* boxCenter, int numRotation, double** rotate, double* scale);
75
77
80
81private:
83 void operator=(const vtkInteractorStyleJoystickActor&) = delete;
84};
85
86VTK_ABI_NAMESPACE_END
87#endif
ray-cast cell picker for all kinds of Prop3Ds
a simple class to control print indentation
Definition vtkIndent.h:29
void OnRightButtonUp() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void Prop3DTransform(vtkProp3D *prop3D, double *boxCenter, int numRotation, double **rotate, double *scale)
void OnLeftButtonUp() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void OnLeftButtonDown() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void OnRightButtonDown() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
static vtkInteractorStyleJoystickActor * New()
void OnMouseMove() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void OnMiddleButtonUp() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void Rotate() override
These methods for the different interactions in different modes are overridden in subclasses to perfo...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void FindPickedActor(int x, int y)
void OnMiddleButtonDown() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
represents an 3D object for placement in a rendered scene
Definition vtkProp3D.h:40
#define VTK_MARSHALAUTO