VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 =========================================================================*/
54 #ifndef __vtkInteractorStyleTerrain_h
55 #define __vtkInteractorStyleTerrain_h
56 
57 #include "vtkInteractionStyleModule.h" // For export macro
58 #include "vtkInteractorStyle.h"
59 
60 class vtkPolyDataMapper;
61 class vtkSphereSource;
62 class vtkExtractEdges;
63 
64 class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleTerrain : public vtkInteractorStyle
65 {
66 public:
68  static vtkInteractorStyleTerrain *New();
69 
70  vtkTypeMacro(vtkInteractorStyleTerrain,vtkInteractorStyle);
71  void PrintSelf(ostream& os, vtkIndent indent);
72 
74 
76  virtual void OnMouseMove();
77  virtual void OnLeftButtonDown();
78  virtual void OnLeftButtonUp();
79  virtual void OnMiddleButtonDown();
80  virtual void OnMiddleButtonUp();
81  virtual void OnRightButtonDown();
82  virtual void OnRightButtonUp();
84 
86  virtual void OnChar();
87 
88  // These methods for the different interactions in different modes
89  // are overridden in subclasses to perform the correct motion.
90  virtual void Rotate();
91  virtual void Pan();
92  virtual void Dolly();
93 
95 
96  vtkSetMacro(LatLongLines,int);
97  vtkGetMacro(LatLongLines,int);
98  vtkBooleanMacro(LatLongLines,int);
100 
101 protected:
104 
105  // Internal helper attributes
107 
109  vtkPolyDataMapper *LatLongMapper;
110  vtkActor *LatLongActor;
112 
113  void SelectRepresentation();
114  void CreateLatLong();
115 
116  double MotionFactor;
117 
118 private:
119  vtkInteractorStyleTerrain(const vtkInteractorStyleTerrain&); // Not implemented.
120  void operator=(const vtkInteractorStyleTerrain&); // Not implemented.
121 
122 };
123 
124 #endif
125 
manipulate camera in scene with natural view up (e.g., terrain)
create a polygonal sphere centered at the origin
extract cell edges from any type of data