VTK
vtkPlot3D.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPlot3D.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 vtkPlot3D_h
27 #define vtkPlot3D_h
28 
29 #include "vtkChartsCoreModule.h" // For export macro
30 #include "vtkContextItem.h"
31 #include "vtkNew.h" // Needed to hold vtkNew ivars
32 #include "vtkSmartPointer.h" // Needed to hold SP ivars
33 #include "vtkVector.h" // For Points ivar
34 #include <vector> // For ivars
35 
36 class vtkChartXYZ;
37 class vtkDataArray;
38 class vtkIdTypeArray;
39 class vtkTable;
41 class vtkPen;
42 
44 {
45 public:
46  vtkTypeMacro(vtkPlot3D, vtkContextItem);
47  virtual void PrintSelf(ostream &os, vtkIndent indent);
48 
50 
52  void SetPen(vtkPen *pen);
53  vtkPen* GetPen();
55 
57 
59  void SetSelectionPen(vtkPen *pen);
60  vtkPen* GetSelectionPen();
62 
64 
65  virtual void SetInputData(vtkTable *input);
66  virtual void SetInputData(vtkTable *input, const vtkStdString &xName,
67  const vtkStdString &yName,
68  const vtkStdString &zName);
69  virtual void SetInputData(vtkTable *input, const vtkStdString &xName,
70  const vtkStdString &yName,
71  const vtkStdString &zName,
72  const vtkStdString &colorName);
73  virtual void SetInputData(vtkTable *input, vtkIdType xColumn,
74  vtkIdType yColumn, vtkIdType zColumn);
76 
81  virtual void SetColors(vtkDataArray *colorArr);
82 
84  std::vector<vtkVector3f> GetPoints();
85 
87 
88  vtkGetObjectMacro(Chart, vtkChartXYZ);
89  virtual void SetChart(vtkChartXYZ* chart);
91 
93  std::string GetXAxisLabel();
94 
96  std::string GetYAxisLabel();
97 
99  std::string GetZAxisLabel();
100 
102  std::vector<vtkVector3f> GetDataBounds() { return this->DataBounds; }
103 
105 
106  virtual void SetSelection(vtkIdTypeArray *id);
107  virtual vtkIdTypeArray* GetSelection();
109 
110 //BTX
111 protected:
112  vtkPlot3D();
113  ~vtkPlot3D();
114 
116  virtual void ComputeDataBounds();
117 
120 
123 
126 
131 
134 
137 
140 
142  std::vector<vtkVector3f> Points;
143 
146 
149 
151  std::vector<vtkVector3f> DataBounds;
152 
155 
156 private:
157  vtkPlot3D(const vtkPlot3D &); // Not implemented.
158  void operator=(const vtkPlot3D &); // Not implemented.
159 
160 //ETX
161 };
162 
163 #endif //vtkPlot3D_h
std::string XAxisLabel
Definition: vtkPlot3D.h:133
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:46
base class for items that are part of a vtkContextScene.
record modification and/or execution time
Definition: vtkTimeStamp.h:34
std::vector< vtkVector3f > DataBounds
Definition: vtkPlot3D.h:151
dynamic, self-adjusting array of vtkIdType
int vtkIdType
Definition: vtkType.h:275
vtkSmartPointer< vtkPen > Pen
Definition: vtkPlot3D.h:119
vtkSmartPointer< vtkPen > SelectionPen
Definition: vtkPlot3D.h:122
std::vector< vtkVector3f > GetDataBounds()
Definition: vtkPlot3D.h:102
int NumberOfComponents
Definition: vtkPlot3D.h:130
a simple class to control print indentation
Definition: vtkIndent.h:38
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
std::vector< vtkVector3f > Points
Definition: vtkPlot3D.h:142
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
Definition: vtkPen.h:38
dynamic, self-adjusting array of unsigned char
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:67
std::string ZAxisLabel
Definition: vtkPlot3D.h:139
std::string YAxisLabel
Definition: vtkPlot3D.h:136
vtkChartXYZ * Chart
Definition: vtkPlot3D.h:148
Abstract class for 3D plots.
Definition: vtkPlot3D.h:43
virtual void PrintSelf(ostream &os, vtkIndent indent)
vtkNew< vtkUnsignedCharArray > Colors
Definition: vtkPlot3D.h:125
Factory class for drawing 3D XYZ charts.
Definition: vtkChartXYZ.h:47
vtkSmartPointer< vtkIdTypeArray > Selection
Definition: vtkPlot3D.h:154
#define VTKCHARTSCORE_EXPORT
vtkTimeStamp PointsBuildTime
Definition: vtkPlot3D.h:145