VTK
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 =========================================================================*/
41 #ifndef vtkInteractorStyleTrackballCamera_h
42 #define vtkInteractorStyleTrackballCamera_h
43 
44 #include "vtkInteractionStyleModule.h" // For export macro
45 #include "vtkInteractorStyle.h"
46 
47 class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleTrackballCamera : public vtkInteractorStyle
48 {
49 public:
52  void PrintSelf(ostream& os, vtkIndent indent);
53 
55 
59  virtual void OnMouseMove();
60  virtual void OnLeftButtonDown();
61  virtual void OnLeftButtonUp();
62  virtual void OnMiddleButtonDown();
63  virtual void OnMiddleButtonUp();
64  virtual void OnRightButtonDown();
65  virtual void OnRightButtonUp();
66  virtual void OnMouseWheelForward();
67  virtual void OnMouseWheelBackward();
69 
70  // These methods for the different interactions in different modes
71  // are overridden in subclasses to perform the correct motion. Since
72  // they are called by OnTimer, they do not have mouse coord parameters
73  // (use interactor's GetEventPosition and GetLastEventPosition)
74  virtual void Rotate();
75  virtual void Spin();
76  virtual void Pan();
77  virtual void Dolly();
78 
80 
83  vtkSetMacro(MotionFactor,double);
84  vtkGetMacro(MotionFactor,double);
86 
87 protected:
90 
91  double MotionFactor;
92 
93  virtual void Dolly(double factor);
94 
95 private:
97  void operator=(const vtkInteractorStyleTrackballCamera&) VTK_DELETE_FUNCTION;
98 };
99 
100 #endif
virtual void OnLeftButtonDown()
virtual void Rotate()
These methods for the different interactions in different modes are overridden in subclasses to perfo...
virtual void OnMiddleButtonDown()
virtual void OnRightButtonDown()
virtual void OnLeftButtonUp()
static vtkInteractorStyle * New()
This class must be supplied with a vtkRenderWindowInteractor wrapper or parent.
virtual void OnMiddleButtonUp()
virtual void OnMouseWheelForward()
virtual void OnRightButtonUp()
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:39
virtual void OnMouseWheelBackward()
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
provide event-driven interface to the rendering window (defines trackball mode)
interactive manipulation of the camera
virtual void OnMouseMove()
Generic event bindings can be overridden in subclasses.