VTK  9.1.0
vtkInteractorStyleTrackballCamera.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkInteractorStyleTrackballCamera.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=========================================================================*/
153#ifndef vtkInteractorStyleTrackballCamera_h
154#define vtkInteractorStyleTrackballCamera_h
155
156#include "vtkInteractionStyleModule.h" // For export macro
157#include "vtkInteractorStyle.h"
158
159class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleTrackballCamera : public vtkInteractorStyle
160{
161public:
164 void PrintSelf(ostream& os, vtkIndent indent) override;
165
167
171 void OnMouseMove() override;
172 void OnLeftButtonDown() override;
173 void OnLeftButtonUp() override;
174 void OnMiddleButtonDown() override;
175 void OnMiddleButtonUp() override;
176 void OnRightButtonDown() override;
177 void OnRightButtonUp() override;
178 void OnMouseWheelForward() override;
179 void OnMouseWheelBackward() override;
181
182 // These methods for the different interactions in different modes
183 // are overridden in subclasses to perform the correct motion. Since
184 // they are called by OnTimer, they do not have mouse coord parameters
185 // (use interactor's GetEventPosition and GetLastEventPosition)
186 void Rotate() override;
187 void Spin() override;
188 void Pan() override;
189 void Dolly() override;
190 void EnvironmentRotate() override;
191
193
196 vtkSetMacro(MotionFactor, double);
197 vtkGetMacro(MotionFactor, double);
199
200protected:
203
205
206 virtual void Dolly(double factor);
207
208private:
210 void operator=(const vtkInteractorStyleTrackballCamera&) = delete;
211};
212
213#endif
a simple class to control print indentation
Definition: vtkIndent.h:113
interactive manipulation of the camera
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.
provide event-driven interface to the rendering window (defines trackball mode)