VTK
vtkInteractorStyleTerrain.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkInteractorStyleTerrain.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 =========================================================================*/
52 #ifndef vtkInteractorStyleTerrain_h
53 #define vtkInteractorStyleTerrain_h
54 
55 #include "vtkInteractionStyleModule.h" // For export macro
56 #include "vtkInteractorStyle.h"
57 
58 class vtkPolyDataMapper;
59 class vtkSphereSource;
60 class vtkExtractEdges;
61 
62 class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleTerrain : public vtkInteractorStyle
63 {
64 public:
69 
71  void PrintSelf(ostream& os, vtkIndent indent);
72 
74 
78  virtual void OnMouseMove();
79  virtual void OnLeftButtonDown();
80  virtual void OnLeftButtonUp();
81  virtual void OnMiddleButtonDown();
82  virtual void OnMiddleButtonUp();
83  virtual void OnRightButtonDown();
84  virtual void OnRightButtonUp();
86 
90  virtual void OnChar();
91 
92  // These methods for the different interactions in different modes
93  // are overridden in subclasses to perform the correct motion.
94  virtual void Rotate();
95  virtual void Pan();
96  virtual void Dolly();
97 
99 
102  vtkSetMacro(LatLongLines,int);
103  vtkGetMacro(LatLongLines,int);
104  vtkBooleanMacro(LatLongLines,int);
106 
107 protected:
110 
111  // Internal helper attributes
113 
118 
119  void SelectRepresentation();
120  void CreateLatLong();
121 
122  double MotionFactor;
123 
124 private:
125  vtkInteractorStyleTerrain(const vtkInteractorStyleTerrain&) VTK_DELETE_FUNCTION;
126  void operator=(const vtkInteractorStyleTerrain&) VTK_DELETE_FUNCTION;
127 
128 };
129 
130 #endif
131 
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()
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:51
virtual void OnLeftButtonUp()
static vtkInteractorStyle * New()
This class must be supplied with a vtkRenderWindowInteractor wrapper or parent.
virtual void OnMiddleButtonUp()
manipulate camera in scene with natural view up (e.g., terrain)
virtual void OnRightButtonUp()
create a polygonal sphere centered at the origin
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
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
map vtkPolyData to graphics primitives
virtual void OnChar()
OnChar is triggered when an ASCII key is pressed.
provide event-driven interface to the rendering window (defines trackball mode)
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
virtual void OnMouseMove()
Generic event bindings can be overridden in subclasses.
extract cell edges from any type of data