VTK
vtkParallelCoordinatesHistogramRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkParallelCoordinatesHistogramRepresentation.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 -------------------------------------------------------------------------*/
54 #ifndef __vtkParallelCoordinatesHistogramRepresentation_h
55 #define __vtkParallelCoordinatesHistogramRepresentation_h
56 
57 #include "vtkViewsInfovisModule.h" // For export macro
59 
64 class vtkLookupTable;
65 
67 {
68 public:
71  void PrintSelf(ostream& os, vtkIndent indent);
72 
74  virtual void ApplyViewTheme(vtkViewTheme* theme);
75 
77 
79  virtual void SetUseHistograms(int);
80  vtkGetMacro(UseHistograms,int);
81  vtkBooleanMacro(UseHistograms,int);
83 
85 
86  virtual void SetShowOutliers(int);
87  vtkGetMacro(ShowOutliers,int);
88  vtkBooleanMacro(ShowOutliers,int);
90 
92 
94  vtkSetVector2Macro(HistogramLookupTableRange,double);
95  vtkGetVector2Macro(HistogramLookupTableRange,double);
97 
98  //BTX
100 
101  void SetNumberOfHistogramBins(int,int);
102  void SetNumberOfHistogramBins(int*);
103  vtkGetVector2Macro(NumberOfHistogramBins,int);
104  //ETX
106 
108 
110  void SetPreferredNumberOfOutliers(int);
111  vtkGetMacro(PreferredNumberOfOutliers,int);
113 
116  virtual int SwapAxisPositions(int position1, int position2);
117 
120  virtual int SetRangeAtPosition(int position, double range[2]);
121 
122 protected:
125 
126  virtual int RequestData(
130 
131  virtual bool AddToView(vtkView* view);
132 
133  virtual bool RemoveFromView(vtkView* view);
134 
137 
139  double HistogramLookupTableRange[2];
140 
142  int NumberOfHistogramBins[2];
143 
144  //BTX
147  //ETX
148 
151 
154 
155  //BTX
160  //ETX
161 
164  virtual int PlaceLines(vtkPolyData* polyData, vtkTable* data, vtkIdTypeArray* idsToPlot);
165 
168  virtual int PlaceCurves(vtkPolyData* polyData, vtkTable* data, vtkIdTypeArray* idsToPlot);
169 
172  virtual int PlaceSelection(vtkPolyData* polyData, vtkTable* data, vtkSelectionNode* selectionNode);
173 
175  virtual int PlaceHistogramLineQuads(vtkPolyData* polyData);
176 
180  virtual int PlaceHistogramCurveQuads(vtkPolyData* polyData);
181 
183 
185  virtual int ComputeDataProperties();
186  virtual int UpdatePlotProperties(vtkStringArray*);
188 
191  virtual vtkImageData* GetHistogramImage(int idx);
192 
194 
195  virtual vtkTable* GetOutlierData();
196 private:
198  void operator=(const vtkParallelCoordinatesHistogramRepresentation&); // Not implemented
199 };
201 
202 #endif