50 #ifndef vtkImplicitFunction_h
51 #define vtkImplicitFunction_h
53 #include "vtkCommonDataModelModule.h"
75 double FunctionValue(const
double x[3]);
76 double FunctionValue(
double x,
double y,
double z) {
77 double xyz[3] = {x, y, z};
return this->FunctionValue(xyz); };
85 void FunctionGradient(
const double x[3],
double g[3]);
87 this->FunctionGradient(x,this->ReturnValue);
88 return this->ReturnValue; };
90 double xyz[3] = {x, y, z};
return this->FunctionGradient(xyz); };
99 virtual void SetTransform(
const double elements[16]);
110 virtual double EvaluateFunction(
double x[3]) = 0;
112 double xyz[3] = {x, y, z};
return this->EvaluateFunction(xyz); };
121 virtual void EvaluateGradient(
double x[3],
double g[3]) = 0;
128 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.
double * FunctionGradient(const double x[3])
Evaluate function gradient at position x-y-z and pass back vector.
vtkTypeUInt64 vtkMTimeType
a simple class to control print indentation
virtual vtkMTimeType GetMTime()
Return this object's modified time.
double EvaluateFunction(double x, double y, double z)
Evaluate function at position x-y-z and return value.