VTK
vtkParallelCoordinatesActor.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkParallelCoordinatesActor.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=========================================================================*/
63#ifndef vtkParallelCoordinatesActor_h
64#define vtkParallelCoordinatesActor_h
65
66#include "vtkRenderingAnnotationModule.h" // For export macro
67#include "vtkActor2D.h"
68
70class vtkAxisActor2D;
71class vtkDataObject;
72class vtkPolyData;
74class vtkTextMapper;
75class vtkTextProperty;
76class vtkParallelCoordinatesActorConnection;
77
78#define VTK_IV_COLUMN 0
79#define VTK_IV_ROW 1
80
81class VTKRENDERINGANNOTATION_EXPORT vtkParallelCoordinatesActor : public vtkActor2D
82{
83public:
85 void PrintSelf(ostream& os, vtkIndent indent);
86
94
96
101 vtkSetClampMacro(IndependentVariables,int,VTK_IV_COLUMN, VTK_IV_ROW);
102 vtkGetMacro(IndependentVariables,int);
104 {this->SetIndependentVariables(VTK_IV_COLUMN);};
106 {this->SetIndependentVariables(VTK_IV_ROW);};
108
110
113 vtkSetStringMacro(Title);
116
118
123 vtkSetClampMacro(NumberOfLabels, int, 0, 50);
124 vtkGetMacro(NumberOfLabels, int);
126
128
131 vtkSetStringMacro(LabelFormat);
132 vtkGetStringMacro(LabelFormat);
134
136
140 vtkGetObjectMacro(TitleTextProperty,vtkTextProperty);
142
144
148 vtkGetObjectMacro(LabelTextProperty,vtkTextProperty);
150
152
159
164
170
176
181
188
189protected:
192
193private:
194
195 vtkParallelCoordinatesActorConnection* ConnectionHolder;
196
197 int IndependentVariables; // Use column or row
198 vtkIdType N; // The number of independent variables
199 double *Mins; // Minimum data value along this row/column
200 double *Maxs; // Maximum data value along this row/column
201 int *Xs; // Axes x-values (in viewport coordinates)
202 int YMin; // Axes y-min-value (in viewport coordinates)
203 int YMax; // Axes y-max-value (in viewport coordinates)
204 int NumberOfLabels; // Along each axis
205 char *LabelFormat;
206 char *Title;
207
208 vtkAxisActor2D **Axes;
209 vtkTextMapper *TitleMapper;
210 vtkActor2D *TitleActor;
211
212 vtkTextProperty *TitleTextProperty;
213 vtkTextProperty *LabelTextProperty;
214
215 vtkPolyData *PlotData; // The lines drawn within the axes
216 vtkPolyDataMapper2D *PlotMapper;
217 vtkActor2D *PlotActor;
218
220
221 int LastPosition[2];
222 int LastPosition2[2];
223
224 void Initialize();
225 int PlaceAxes(vtkViewport *viewport, int *size);
226
227private:
229 void operator=(const vtkParallelCoordinatesActor&) VTK_DELETE_FUNCTION;
230};
231
232
233#endif
234
a actor that draws 2D data
Definition: vtkActor2D.h:46
Proxy object to connect input/output ports.
Create an axis with tick marks and labels.
general representation of visualization data
Definition: vtkDataObject.h:65
a simple class to control print indentation
Definition: vtkIndent.h:40
create parallel coordinate display from input field
vtkDataObject * GetInput()
Remove a dataset from the list of data to append.
int RenderOpaqueGeometry(vtkViewport *)
Draw the parallel coordinates plot.
virtual void SetLabelTextProperty(vtkTextProperty *p)
Set/Get the labels text property.
static vtkParallelCoordinatesActor * New()
Instantiate object with autorange computation; the number of labels set to 5 for the x and y axes; a ...
virtual void SetInputConnection(vtkAlgorithmOutput *)
Set the input to the parallel coordinates actor.
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
virtual void SetTitleTextProperty(vtkTextProperty *p)
Set/Get the title text property.
void ReleaseGraphicsResources(vtkWindow *)
Release any graphics resources that are being consumed by this actor.
virtual void SetInputData(vtkDataObject *)
Set the input to the parallel coordinates actor.
virtual int HasTranslucentPolygonalGeometry()
Does this prop have some translucent polygonal geometry?
int RenderOverlay(vtkViewport *)
Support the standard render methods.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:86
2D text annotation
Definition: vtkTextMapper.h:54
represent text properties.
record modification and/or execution time
Definition: vtkTimeStamp.h:36
abstract specification for Viewports
Definition: vtkViewport.h:48
window superclass for vtkRenderWindow
Definition: vtkWindow.h:35
@ size
Definition: vtkX3D.h:253
vtkTimeStamp BuildTime
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
#define VTK_IV_ROW
#define VTK_IV_COLUMN
int vtkIdType
Definition: vtkType.h:287