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 "vtkChart.h"
30 
31 class vtkIdTypeArray;
32 class vtkStdString;
33 class vtkStringArray;
35 
37 {
38 public:
40  virtual void PrintSelf(ostream &os, vtkIndent indent);
41 
44 
48  virtual void Update();
49 
52  virtual bool Paint(vtkContext2D *painter);
53 
55  void SetColumnVisibility(const vtkStdString& name, bool visible);
56 
59  void SetColumnVisibilityAll(bool visible);
60 
62  bool GetColumnVisibility(const vtkStdString& name);
63 
65 
66  vtkGetObjectMacro(VisibleColumns, vtkStringArray);
68 
71  virtual vtkPlot* GetPlot(vtkIdType index);
72 
74  virtual vtkIdType GetNumberOfPlots();
75 
77  virtual vtkAxis* GetAxis(int axisIndex);
78 
80  virtual vtkIdType GetNumberOfAxes();
81 
85  virtual void RecalculateBounds();
86 
89  virtual void SetPlot(vtkPlotParallelCoordinates *plot);
90 
91 //BTX
93  virtual bool Hit(const vtkContextMouseEvent &mouse);
94 
96  virtual bool MouseEnterEvent(const vtkContextMouseEvent &mouse);
97 
99  virtual bool MouseMoveEvent(const vtkContextMouseEvent &mouse);
100 
102  virtual bool MouseLeaveEvent(const vtkContextMouseEvent &mouse);
103 
105  virtual bool MouseButtonPressEvent(const vtkContextMouseEvent &mouse);
106 
108  virtual bool MouseButtonReleaseEvent(const vtkContextMouseEvent &mouse);
109 
111 
113  virtual bool MouseWheelEvent(const vtkContextMouseEvent &mouse, int delta);
114 //ETX
116 
117 //BTX
118 protected:
121 
123 
124  class Private;
125  Private *Storage;
127 
129 
132 
135 
138 
139  void ResetSelection();
140  void UpdateGeometry();
141  void CalculatePlotTransform();
142  void SwapAxes(int a1, int a2);
143 
144 private:
145  vtkChartParallelCoordinates(const vtkChartParallelCoordinates &); // Not implemented.
146  void operator=(const vtkChartParallelCoordinates &); // Not implemented.
147 //ETX
148 };
149 
150 #endif //__vtkChartParallelCoordinates_h
#define VTK_CHARTS_EXPORT
Wrapper around vtkstd::string to keep symbols short.
Definition: vtkStdString.h:45
virtual bool MouseButtonPressEvent(const vtkContextMouseEvent &mouse)
virtual vtkIdType GetNumberOfAxes()
record modification and/or execution time
Definition: vtkTimeStamp.h:33
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:255
Class for drawing 2D primitives to a graphical context.
Definition: vtkContext2D.h:54
Factory class for drawing 2D charts.
Definition: vtkChart.h:46
virtual bool MouseWheelEvent(const vtkContextMouseEvent &mouse, int delta)
takes care of drawing 2D axes
Definition: vtkAxis.h:44
data structure to represent mouse events.
a simple class to control print indentation
Definition: vtkIndent.h:37
virtual bool MouseButtonReleaseEvent(const vtkContextMouseEvent &mouse)
virtual vtkIdType GetNumberOfPlots()
Abstract class for 2D plots.
Definition: vtkPlot.h:50
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)
virtual vtkAxis * GetAxis(int axisIndex)
Factory class for drawing 2D charts.