VTK
vtkParallelCoordinatesInteractorStyle.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkParallelCoordinatesInteractorStyle.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 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2009 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
45 #ifndef vtkParallelCoordinatesInteractorStyle_h
46 #define vtkParallelCoordinatesInteractorStyle_h
47 
48 #include "vtkInteractionStyleModule.h" // For export macro
50 
51 class vtkViewport;
52 
54 {
55 public:
58  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
59 
60  enum {
61  INTERACT_HOVER=0,
64  INTERACT_PAN
65  };
66 
68 
71  vtkGetVector2Macro(CursorStartPosition,int);
72  vtkGetVector2Macro(CursorCurrentPosition,int);
73  vtkGetVector2Macro(CursorLastPosition,int);
75 
77 
80  void GetCursorStartPosition(vtkViewport *viewport, double pos[2]);
81  void GetCursorCurrentPosition(vtkViewport *viewport, double pos[2]);
82  void GetCursorLastPosition(vtkViewport *viewport, double pos[2]);
84 
86 
90  void OnMouseMove() VTK_OVERRIDE;
91  void OnLeftButtonDown() VTK_OVERRIDE;
92  void OnLeftButtonUp() VTK_OVERRIDE;
93  void OnMiddleButtonDown() VTK_OVERRIDE;
94  void OnMiddleButtonUp() VTK_OVERRIDE;
95  void OnRightButtonDown() VTK_OVERRIDE;
96  void OnRightButtonUp() VTK_OVERRIDE;
97  void OnLeave() VTK_OVERRIDE;
99 
101  virtual void StartInspect(int x, int y);
102  virtual void Inspect(int x, int y);
103  virtual void EndInspect();
105 
107  void StartZoom() VTK_OVERRIDE;
108  void Zoom() VTK_OVERRIDE;
109  void EndZoom() VTK_OVERRIDE;
111 
113  void StartPan() VTK_OVERRIDE;
114  void Pan() VTK_OVERRIDE;
115  void EndPan() VTK_OVERRIDE;
117 
121  void OnChar() VTK_OVERRIDE;
122 
123 protected:
125  ~vtkParallelCoordinatesInteractorStyle() VTK_OVERRIDE;
126 
127  int CursorStartPosition[2];
128  int CursorCurrentPosition[2];
129  int CursorLastPosition[2];
130 
131 private:
132  vtkParallelCoordinatesInteractorStyle(const vtkParallelCoordinatesInteractorStyle&) VTK_DELETE_FUNCTION;
133  void operator=(const vtkParallelCoordinatesInteractorStyle&) VTK_DELETE_FUNCTION;
134 };
135 
136 #endif
interactive manipulation of the camera specialized for parallel coordinates
abstract specification for Viewports
Definition: vtkViewport.h:44
static vtkInteractorStyleTrackballCamera * New()
a simple class to control print indentation
Definition: vtkIndent.h:33
void OnMouseMove() 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.
interactive manipulation of the camera