VTK
vtkParametricFunction.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkParametricFunction.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 =========================================================================*/
55 #ifndef vtkParametricFunction_h
56 #define vtkParametricFunction_h
57 
58 #include "vtkCommonComputationalGeometryModule.h" // For export macro
59 #include "vtkObject.h"
60 
62 {
63 public:
65  void PrintSelf(ostream& os, vtkIndent indent);
66 
72  virtual int GetDimension() = 0;
73 
82  virtual void Evaluate(double uvw[3], double Pt[3], double Duvw[9]) = 0;
83 
89  virtual double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9]) = 0;
90 
92 
93  vtkSetMacro(MinimumU,double);
94  vtkGetMacro(MinimumU,double);
96 
98 
99  vtkSetMacro(MaximumU,double);
100  vtkGetMacro(MaximumU,double);
102 
104 
105  vtkSetMacro(MinimumV,double);
106  vtkGetMacro(MinimumV,double);
108 
110 
111  vtkSetMacro(MaximumV,double);
112  vtkGetMacro(MaximumV,double);
114 
116 
117  vtkSetMacro(MinimumW,double);
118  vtkGetMacro(MinimumW,double);
120 
122 
123  vtkSetMacro(MaximumW,double);
124  vtkGetMacro(MaximumW,double);
126 
128 
130  vtkSetClampMacro(JoinU,int,0,1);
131  vtkGetMacro(JoinU,int);
132  vtkBooleanMacro(JoinU,int);
134 
136 
137  vtkSetClampMacro(JoinV, int, 0, 1);
138  vtkGetMacro(JoinV, int);
139  vtkBooleanMacro(JoinV, int);
141 
143 
144  vtkSetClampMacro(JoinW, int, 0, 1);
145  vtkGetMacro(JoinW, int);
146  vtkBooleanMacro(JoinW, int);
148 
150 
153  vtkSetClampMacro(TwistU,int,0,1);
154  vtkGetMacro(TwistU,int);
155  vtkBooleanMacro(TwistU,int);
157 
159 
162  vtkSetClampMacro(TwistV, int, 0, 1);
163  vtkGetMacro(TwistV, int);
164  vtkBooleanMacro(TwistV, int);
166 
168 
171  vtkSetClampMacro(TwistW, int, 0, 1);
172  vtkGetMacro(TwistW, int);
173  vtkBooleanMacro(TwistW, int);
175 
177 
183  vtkSetClampMacro(ClockwiseOrdering,int,0,1);
184  vtkGetMacro(ClockwiseOrdering,int);
185  vtkBooleanMacro(ClockwiseOrdering,int);
187 
189 
192  vtkSetClampMacro(DerivativesAvailable,int,0,1);
193  vtkGetMacro(DerivativesAvailable,int);
194  vtkBooleanMacro(DerivativesAvailable,int);
196 
197 protected:
200 
201  // Variables
202  double MinimumU;
203  double MaximumU;
204  double MinimumV;
205  double MaximumV;
206  double MinimumW;
207  double MaximumW;
208 
209  int JoinU;
210  int JoinV;
211  int JoinW;
212 
213  int TwistU;
214  int TwistV;
215  int TwistW;
216 
218 
220 
221 private:
222  vtkParametricFunction(const vtkParametricFunction&); // Not implemented.
223  void operator=(const vtkParametricFunction&); // Not implemented.
224 
225 };
226 
227 #endif
vtkParametricFunction::vtkParametricFunction
vtkParametricFunction()
vtkParametricFunction::Evaluate
virtual void Evaluate(double uvw[3], double Pt[3], double Duvw[9])=0
vtkParametricFunction::JoinU
int JoinU
Definition: vtkParametricFunction.h:209
vtkParametricFunction::TwistV
int TwistV
Definition: vtkParametricFunction.h:214
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkParametricFunction::~vtkParametricFunction
virtual ~vtkParametricFunction()
vtkParametricFunction
abstract interface for parametric functions
Definition: vtkParametricFunction.h:62
vtkCommonComputationalGeometryModule.h
vtkSetClampMacro
#define vtkSetClampMacro(name, type, min, max)
Definition: vtkSetGet.h:143
vtkParametricFunction::MinimumW
double MinimumW
Definition: vtkParametricFunction.h:206
vtkParametricFunction::ClockwiseOrdering
int ClockwiseOrdering
Definition: vtkParametricFunction.h:217
vtkParametricFunction::TwistU
int TwistU
Definition: vtkParametricFunction.h:213
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkParametricFunction::MaximumU
double MaximumU
Definition: vtkParametricFunction.h:203
vtkParametricFunction::JoinV
int JoinV
Definition: vtkParametricFunction.h:210
VTKCOMMONCOMPUTATIONALGEOMETRY_EXPORT
#define VTKCOMMONCOMPUTATIONALGEOMETRY_EXPORT
Definition: vtkCommonComputationalGeometryModule.h:15
vtkParametricFunction::TwistW
int TwistW
Definition: vtkParametricFunction.h:215
vtkParametricFunction::MinimumU
double MinimumU
Definition: vtkParametricFunction.h:202
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkParametricFunction::EvaluateScalar
virtual double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9])=0
vtkObject.h
vtkParametricFunction::JoinW
int JoinW
Definition: vtkParametricFunction.h:211
vtkBooleanMacro
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkParametricFunction::MinimumV
double MinimumV
Definition: vtkParametricFunction.h:204
vtkParametricFunction::GetDimension
virtual int GetDimension()=0
vtkParametricFunction::MaximumW
double MaximumW
Definition: vtkParametricFunction.h:207
vtkParametricFunction::DerivativesAvailable
int DerivativesAvailable
Definition: vtkParametricFunction.h:219
vtkParametricFunction::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkParametricFunction::MaximumV
double MaximumV
Definition: vtkParametricFunction.h:205