50#ifndef vtkImplicitFunction_h
51#define vtkImplicitFunction_h
53#include "vtkCommonDataModelModule.h"
81 double xyz[3] = { x, y, z };
82 return this->FunctionValue(xyz);
94 this->FunctionGradient(x, this->ReturnValue);
95 return this->ReturnValue;
99 double xyz[3] = { x, y, z };
100 return this->FunctionGradient(xyz);
125 double xyz[3] = { x, y, z };
126 return this->EvaluateFunction(xyz);
143 double ReturnValue[3];
abstract superclass for arrays of numeric data
abstract interface for implicit functions
virtual void EvaluateFunction(vtkDataArray *input, vtkDataArray *output)
Evaluate function at position x-y-z and return value.
virtual void SetTransform(const double elements[16])
Set/Get a transformation to apply to input points before executing the implicit function.
vtkAbstractTransform * Transform
virtual void EvaluateGradient(double x[3], double g[3])=0
Evaluate function gradient at position x-y-z and pass back vector.
double * FunctionGradient(const double x[3])
Evaluate function gradient at position x-y-z and pass back vector.
virtual void FunctionValue(vtkDataArray *input, vtkDataArray *output)
Evaluate function at position x-y-z and return value.
virtual double EvaluateFunction(double x, double y, double z)
Evaluate function at position x-y-z and return value.
vtkMTimeType GetMTime() override
Overload standard modified time function.
virtual void SetTransform(vtkAbstractTransform *)
Set/Get a transformation to apply to input points before executing the implicit function.
double FunctionValue(double x, double y, double z)
Evaluate function at position x-y-z and return value.
double * FunctionGradient(double x, double y, double z)
Evaluate function gradient at position x-y-z and pass back vector.
virtual double EvaluateFunction(double x[3])=0
Evaluate function at position x-y-z and return value.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double FunctionValue(const double x[3])
Evaluate function at position x-y-z and return value.
void FunctionGradient(const double x[3], double g[3])
Evaluate function gradient at position x-y-z and pass back vector.
~vtkImplicitFunction() override
a simple class to control print indentation
abstract base class for most VTK objects
vtkTypeUInt32 vtkMTimeType
#define VTK_SIZEHINT(...)