VTK  9.5.2
vtkInteractorStyleTrackballCamera.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
137
138#ifndef vtkInteractorStyleTrackballCamera_h
139#define vtkInteractorStyleTrackballCamera_h
140
141#include "vtkInteractionStyleModule.h" // For export macro
142#include "vtkInteractorStyle.h"
143#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
144
145VTK_ABI_NAMESPACE_BEGIN
147 : public vtkInteractorStyle
148{
149public:
152 void PrintSelf(ostream& os, vtkIndent indent) override;
153
155
159 void OnMouseMove() override;
160 void OnLeftButtonDown() override;
161 void OnLeftButtonUp() override;
162 void OnMiddleButtonDown() override;
163 void OnMiddleButtonUp() override;
164 void OnRightButtonDown() override;
165 void OnRightButtonUp() override;
166 void OnMouseWheelForward() override;
167 void OnMouseWheelBackward() override;
169
170 // These methods for the different interactions in different modes
171 // are overridden in subclasses to perform the correct motion. Since
172 // they are called by OnTimer, they do not have mouse coord parameters
173 // (use interactor's GetEventPosition and GetLastEventPosition)
174 void Rotate() override;
175 void Spin() override;
176 void Pan() override;
177 void Dolly() override;
178 void EnvironmentRotate() override;
179
181
184 vtkSetMacro(MotionFactor, double);
185 vtkGetMacro(MotionFactor, double);
187
188protected:
191
193
194 virtual void Dolly(double factor);
195
196private:
198 void operator=(const vtkInteractorStyleTrackballCamera&) = delete;
199};
200
201VTK_ABI_NAMESPACE_END
202#endif
a simple class to control print indentation
Definition vtkIndent.h:108
void OnRightButtonUp() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
virtual void Dolly(double factor)
static vtkInteractorStyleTrackballCamera * New()
void OnLeftButtonDown() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void OnMouseWheelForward() 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 OnMouseMove() 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 OnMouseWheelBackward() 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.
void OnLeftButtonUp() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void OnMiddleButtonDown() override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
#define VTK_MARSHALAUTO