50 #ifndef vtkImplicitFunction_h 51 #define vtkImplicitFunction_h 53 #include "vtkCommonDataModelModule.h" 78 double FunctionValue(
const double x[3]);
80 double xyz[3] = {x, y, z};
return this->FunctionValue(xyz); };
88 void FunctionGradient(
const double x[3],
double g[3]);
90 this->FunctionGradient(x,this->ReturnValue);
91 return this->ReturnValue; };
93 double xyz[3] = {x, y, z};
return this->FunctionGradient(xyz); };
102 virtual void SetTransform(
const double elements[16]);
113 virtual double EvaluateFunction(
double x[3]) = 0;
116 double xyz[3] = {x, y, z};
return this->EvaluateFunction(xyz); };
125 virtual void EvaluateGradient(
double x[3],
double g[3]) = 0;
132 double ReturnValue[3];
abstract interface for implicit functions
double * FunctionGradient(double x, double y, double z)
Evaluate function gradient at position x-y-z and pass back vector.
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTypeUInt32 vtkMTimeType
double * FunctionGradient(const double x[3])
Evaluate function gradient at position x-y-z and pass back vector.
double FunctionValue(double x, double y, double z)
Evaluate function at position x-y-z and return value.
a simple class to control print indentation
abstract superclass for arrays of numeric data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkAbstractTransform * Transform
#define VTK_SIZEHINT(...)
virtual double EvaluateFunction(double x, double y, double z)
Evaluate function at position x-y-z and return value.