VTK  9.3.20240327
vtkInteractorStyleSwitch.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
99 #ifndef vtkInteractorStyleSwitch_h
100 #define vtkInteractorStyleSwitch_h
101 
102 #include "vtkInteractionStyleModule.h" // For export macro
104 
105 #define VTKIS_JOYSTICK 0
106 #define VTKIS_TRACKBALL 1
107 
108 #define VTKIS_CAMERA 0
109 #define VTKIS_ACTOR 1
110 
111 VTK_ABI_NAMESPACE_BEGIN
117 
118 class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleSwitch : public vtkInteractorStyleSwitchBase
119 {
120 public:
123  void PrintSelf(ostream& os, vtkIndent indent) override;
124 
129 
135 
137 
140  vtkGetObjectMacro(CurrentStyle, vtkInteractorStyle);
147 
152  void OnChar() override;
153 
155 
162 
163 protected:
166 
168 
175 
179 
180 private:
182  void operator=(const vtkInteractorStyleSwitch&) = delete;
183 };
184 
185 VTK_ABI_NAMESPACE_END
186 #endif
a simple class to control print indentation
Definition: vtkIndent.h:108
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:171
@ value
Definition: vtkX3D.h:220
int vtkTypeBool
Definition: vtkABI.h:64