VTK  9.0.3
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 =========================================================================*/
35 #ifndef vtkInteractorStyleTrackballCamera_h
36 #define vtkInteractorStyleTrackballCamera_h
37 
38 #include "vtkInteractionStyleModule.h" // For export macro
39 #include "vtkInteractorStyle.h"
40 
41 class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleTrackballCamera : public vtkInteractorStyle
42 {
43 public:
46  void PrintSelf(ostream& os, vtkIndent indent) override;
47 
49 
53  void OnMouseMove() override;
54  void OnLeftButtonDown() override;
55  void OnLeftButtonUp() override;
56  void OnMiddleButtonDown() override;
57  void OnMiddleButtonUp() override;
58  void OnRightButtonDown() override;
59  void OnRightButtonUp() override;
60  void OnMouseWheelForward() override;
61  void OnMouseWheelBackward() override;
63 
64  // These methods for the different interactions in different modes
65  // are overridden in subclasses to perform the correct motion. Since
66  // they are called by OnTimer, they do not have mouse coord parameters
67  // (use interactor's GetEventPosition and GetLastEventPosition)
68  void Rotate() override;
69  void Spin() override;
70  void Pan() override;
71  void Dolly() override;
72  void EnvironmentRotate() override;
73 
75 
78  vtkSetMacro(MotionFactor, double);
79  vtkGetMacro(MotionFactor, double);
81 
82 protected:
85 
86  double MotionFactor;
87 
88  virtual void Dolly(double factor);
89 
90 private:
92  void operator=(const vtkInteractorStyleTrackballCamera&) = delete;
93 };
94 
95 #endif
a simple class to control print indentation
Definition: vtkIndent.h:34
interactive manipulation of the camera
virtual void Dolly(double factor)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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...
static vtkInteractorStyleTrackballCamera * New()
provide event-driven interface to the rendering window (defines trackball mode)