VTK
vtkChartParallelCoordinates.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkChartParallelCoordinates.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 
26 #ifndef vtkChartParallelCoordinates_h
27 #define vtkChartParallelCoordinates_h
28 
29 #include "vtkChartsCoreModule.h" // For export macro
30 #include "vtkChart.h"
31 
32 class vtkIdTypeArray;
33 class vtkStdString;
34 class vtkStringArray;
36 
38 {
39 public:
41  virtual void PrintSelf(ostream &os, vtkIndent indent);
42 
45 
49  virtual void Update();
50 
53  virtual bool Paint(vtkContext2D *painter);
54 
56  void SetColumnVisibility(const vtkStdString& name, bool visible);
57 
60  void SetColumnVisibilityAll(bool visible);
61 
63  bool GetColumnVisibility(const vtkStdString& name);
64 
66 
67  vtkGetObjectMacro(VisibleColumns, vtkStringArray);
69 
72  virtual vtkPlot* GetPlot(vtkIdType index);
73 
75  virtual vtkIdType GetNumberOfPlots();
76 
78  virtual vtkAxis* GetAxis(int axisIndex);
79 
81  virtual vtkIdType GetNumberOfAxes();
82 
86  virtual void RecalculateBounds();
87 
90  virtual void SetPlot(vtkPlotParallelCoordinates *plot);
91 
92 //BTX
94  virtual bool Hit(const vtkContextMouseEvent &mouse);
95 
97  virtual bool MouseEnterEvent(const vtkContextMouseEvent &mouse);
98 
100  virtual bool MouseMoveEvent(const vtkContextMouseEvent &mouse);
101 
103  virtual bool MouseLeaveEvent(const vtkContextMouseEvent &mouse);
104 
106  virtual bool MouseButtonPressEvent(const vtkContextMouseEvent &mouse);
107 
109  virtual bool MouseButtonReleaseEvent(const vtkContextMouseEvent &mouse);
110 
112 
114  virtual bool MouseWheelEvent(const vtkContextMouseEvent &mouse, int delta);
115 //ETX
117 
118 //BTX
119 protected:
122 
124 
125  class Private;
126  Private *Storage;
128 
130 
133 
136 
139 
140  void ResetSelection();
141  void UpdateGeometry();
142  void CalculatePlotTransform();
143  void SwapAxes(int a1, int a2);
144 
145 private:
146  vtkChartParallelCoordinates(const vtkChartParallelCoordinates &); // Not implemented.
147  void operator=(const vtkChartParallelCoordinates &); // Not implemented.
148 //ETX
149 };
150 
151 #endif //vtkChartParallelCoordinates_h
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:46
virtual bool MouseButtonPressEvent(const vtkContextMouseEvent &mouse)
virtual vtkIdType GetNumberOfAxes()
record modification and/or execution time
Definition: vtkTimeStamp.h:34
a vtkAbstractArray subclass for strings
virtual void RecalculateBounds()
Class for drawing a parallel coordinate plot given columns from a vtkTable.
bool CalculatePlotTransform(vtkAxis *x, vtkAxis *y, vtkTransform2D *transform)
dynamic, self-adjusting array of vtkIdType
virtual void PrintSelf(ostream &os, vtkIndent indent)
int vtkIdType
Definition: vtkType.h:275
Class for drawing 2D primitives to a graphical context.
Definition: vtkContext2D.h:56
Factory class for drawing 2D charts.
Definition: vtkChart.h:49
virtual bool MouseWheelEvent(const vtkContextMouseEvent &mouse, int delta)
takes care of drawing 2D axes
Definition: vtkAxis.h:70
data structure to represent mouse events.
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual bool MouseButtonReleaseEvent(const vtkContextMouseEvent &mouse)
virtual vtkIdType GetNumberOfPlots()
Abstract class for 2D plots.
Definition: vtkPlot.h:51
virtual bool MouseEnterEvent(const vtkContextMouseEvent &mouse)
virtual bool Paint(vtkContext2D *painter)=0
virtual bool MouseMoveEvent(const vtkContextMouseEvent &mouse)
virtual bool Hit(const vtkContextMouseEvent &mouse)
virtual vtkPlot * GetPlot(vtkIdType index)
static vtkObject * New()
virtual void Update()
virtual bool MouseLeaveEvent(const vtkContextMouseEvent &mouse)
#define VTKCHARTSCORE_EXPORT
virtual vtkAxis * GetAxis(int axisIndex)
Factory class for drawing 2D charts.