VTK  9.2.20230328
vtkInteractorStyleSwitch.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkInteractorStyleSwitch.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
101 #ifndef vtkInteractorStyleSwitch_h
102 #define vtkInteractorStyleSwitch_h
103 
104 #include "vtkInteractionStyleModule.h" // For export macro
106 
107 #define VTKIS_JOYSTICK 0
108 #define VTKIS_TRACKBALL 1
109 
110 #define VTKIS_CAMERA 0
111 #define VTKIS_ACTOR 1
112 
113 VTK_ABI_NAMESPACE_BEGIN
119 
120 class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleSwitch : public vtkInteractorStyleSwitchBase
121 {
122 public:
125  void PrintSelf(ostream& os, vtkIndent indent) override;
126 
131 
137 
139 
142  vtkGetObjectMacro(CurrentStyle, vtkInteractorStyle);
149 
154  void OnChar() override;
155 
157 
164 
165 protected:
168 
170 
177 
181 
182 private:
184  void operator=(const vtkInteractorStyleSwitch&) = delete;
185 };
186 
187 VTK_ABI_NAMESPACE_END
188 #endif
a simple class to control print indentation
Definition: vtkIndent.h:120
manipulate objects in the scene independently of one another
interactive manipulation of the camera
multitouch manipulation of the camera
class to swap between interactory styles
void SetAutoAdjustCameraClippingRange(vtkTypeBool value) override
We must override this method in order to pass the setting down to the underlying styles.
vtkInteractorStyleMultiTouchCamera * MultiTouchCamera
void SetCurrentStyleToJoystickActor()
Set/Get current style.
vtkInteractorStyleJoystickActor * JoystickActor
vtkInteractorStyleJoystickCamera * JoystickCamera
void SetInteractor(vtkRenderWindowInteractor *iren) override
The sub styles need the interactor too.
void SetCurrentStyleToTrackballActor()
Set/Get current style.
void SetCurrentStyleToJoystickCamera()
Set/Get current style.
static vtkInteractorStyleSwitch * New()
void OnChar() override
Only care about the char event, which is used to switch between different styles.
void SetCurrentRenderer(vtkRenderer *) override
Overridden from vtkInteractorObserver because the interactor styles used by this class must also be u...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetCurrentStyleToMultiTouchCamera()
Set/Get current style.
void SetCurrentStyleToTrackballCamera()
Set/Get current style.
vtkInteractorStyleTrackballActor * TrackballActor
void SetDefaultRenderer(vtkRenderer *) override
Overridden from vtkInteractorObserver because the interactor styles used by this class must also be u...
vtkInteractorStyleTrackballCamera * TrackballCamera
~vtkInteractorStyleSwitch() override
manipulate objects in the scene independent of each other
interactive manipulation of the camera
provide event-driven interface to the rendering window (defines trackball mode)
platform-independent render window interaction including picking and frame rate control.
abstract specification for renderers
Definition: vtkRenderer.h:183
@ value
Definition: vtkX3D.h:232
int vtkTypeBool
Definition: vtkABI.h:71