VTK
vtkArcPlotter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkArcPlotter.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 =========================================================================*/
43 #ifndef __vtkArcPlotter_h
44 #define __vtkArcPlotter_h
45 
46 #include "vtkPolyDataAlgorithm.h"
47 
48 #define VTK_PLOT_SCALARS 1
49 #define VTK_PLOT_VECTORS 2
50 #define VTK_PLOT_NORMALS 3
51 #define VTK_PLOT_TCOORDS 4
52 #define VTK_PLOT_TENSORS 5
53 #define VTK_PLOT_FIELD_DATA 6
54 
55 class vtkCamera;
56 class vtkDataArray;
57 class vtkPointData;
58 class vtkPoints;
59 
61 {
62 public:
64  static vtkArcPlotter *New();
65 
67  void PrintSelf(ostream& os, vtkIndent indent);
68 
70 
72  virtual void SetCamera(vtkCamera*);
73  vtkGetObjectMacro(Camera,vtkCamera);
75 
77 
81  vtkSetMacro(PlotMode, int);
82  vtkGetMacro(PlotMode, int);
83  void SetPlotModeToPlotScalars() {this->SetPlotMode(VTK_PLOT_SCALARS);};
84  void SetPlotModeToPlotVectors() {this->SetPlotMode(VTK_PLOT_VECTORS);};
85  void SetPlotModeToPlotNormals() {this->SetPlotMode(VTK_PLOT_NORMALS);};
86  void SetPlotModeToPlotTCoords() {this->SetPlotMode(VTK_PLOT_TCOORDS);};
87  void SetPlotModeToPlotTensors() {this->SetPlotMode(VTK_PLOT_TENSORS);};
89  {this->SetPlotMode(VTK_PLOT_FIELD_DATA);};
91 
93 
96  vtkSetMacro(PlotComponent,int);
97  vtkGetMacro(PlotComponent,int);
99 
101 
102  vtkSetClampMacro(Radius,double,0.0,VTK_LARGE_FLOAT);
103  vtkGetMacro(Radius,double);
105 
107 
109  vtkSetClampMacro(Height,double,0.0,VTK_LARGE_FLOAT);
110  vtkGetMacro(Height,double);
112 
114 
117  vtkSetClampMacro(Offset, double, 0.0, VTK_LARGE_FLOAT);
118  vtkGetMacro(Offset, double);
120 
122 
125  vtkSetMacro(UseDefaultNormal,int);
126  vtkGetMacro(UseDefaultNormal,int);
127  vtkBooleanMacro(UseDefaultNormal,int);
129 
131 
133  vtkSetVector3Macro(DefaultNormal,float);
134  vtkGetVectorMacro(DefaultNormal,float,3);
136 
138 
140  vtkSetClampMacro(FieldDataArray,int,0,VTK_LARGE_INTEGER);
141  vtkGetMacro(FieldDataArray,int);
143 
145  unsigned long GetMTime();
146 
147 protected:
148  vtkArcPlotter();
149  ~vtkArcPlotter();
150 
152  int OffsetPoint(vtkIdType ptId, vtkPoints *inPts, double n[3],
153  vtkPoints *newPts, double offset,
154  double *range, double val);
155  int ProcessComponents(vtkIdType numPts, vtkPointData *pd);
156 
158  int PlotMode;
160  double Radius;
161  double Height;
162  double Offset;
163  float DefaultNormal[3];
166 
167 private:
168  vtkDataArray *Data;
169  double *DataRange;
170  double *Tuple;
171  int NumberOfComponents;
172  int ActiveComponent;
173  int StartComp;
174  int EndComp;
175 
176 private:
177  vtkArcPlotter(const vtkArcPlotter&); // Not implemented.
178  void operator=(const vtkArcPlotter&); // Not implemented.
179 };
180 
181 #endif
represent and manipulate point attribute data
Definition: vtkPointData.h:35
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
void SetPlotModeToPlotTCoords()
Definition: vtkArcPlotter.h:86
#define VTK_PLOT_TCOORDS
Definition: vtkArcPlotter.h:51
#define VTK_PLOT_FIELD_DATA
Definition: vtkArcPlotter.h:53
int vtkIdType
Definition: vtkType.h:255
void SetPlotModeToPlotFieldData()
Definition: vtkArcPlotter.h:88
vtkCamera * Camera
#define VTK_PLOT_VECTORS
Definition: vtkArcPlotter.h:49
static vtkPolyDataAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent)
Superclass for algorithms that produce only polydata as output.
virtual unsigned long GetMTime()
a simple class to control print indentation
Definition: vtkIndent.h:37
a virtual camera for 3D rendering
Definition: vtkCamera.h:47
plot data along an arbitrary polyline
Definition: vtkArcPlotter.h:60
void SetPlotModeToPlotVectors()
Definition: vtkArcPlotter.h:84
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:53
#define VTK_LARGE_FLOAT
Definition: vtkType.h:149
#define VTK_PLOT_TENSORS
Definition: vtkArcPlotter.h:52
void SetPlotModeToPlotTensors()
Definition: vtkArcPlotter.h:87
void SetPlotModeToPlotNormals()
Definition: vtkArcPlotter.h:85
Store zero or more vtkInformation instances.
#define VTK_PLOT_NORMALS
Definition: vtkArcPlotter.h:50
#define VTK_LARGE_INTEGER
Definition: vtkType.h:148
#define VTK_HYBRID_EXPORT
void SetPlotModeToPlotScalars()
Definition: vtkArcPlotter.h:83
represent and manipulate 3D points
Definition: vtkPoints.h:38
#define VTK_PLOT_SCALARS
Definition: vtkArcPlotter.h:48