42#ifndef vtkSuperquadric_h
43#define vtkSuperquadric_h
45#include "vtkCommonDataModelModule.h"
48#define VTK_MIN_SUPERQUADRIC_THICKNESS 1e-4
72 vtkSetVector3Macro(Center,
double);
73 vtkGetVectorMacro(Center,
double,3);
80 vtkSetVector3Macro(Scale,
double);
81 vtkGetVectorMacro(Scale,
double,3);
89 vtkGetMacro(Thickness,
double);
98 vtkGetMacro(PhiRoundness,
double);
107 vtkGetMacro(ThetaRoundness,
double);
116 vtkGetMacro(Size,
double);
124 vtkGetMacro(Toroidal,
int);
abstract interface for implicit functions
virtual double EvaluateFunction(double x[3])=0
Evaluate function at position x-y-z and return value.
a simple class to control print indentation
implicit function for a Superquadric
static vtkSuperquadric * New()
Construct with superquadric radius of 0.5, toroidal off, center at 0.0, scale (1,1,...
double EvaluateFunction(double x, double y, double z)
void EvaluateGradient(double x[3], double g[3]) override
Evaluate function gradient at position x-y-z and pass back vector.
double EvaluateFunction(double x[3]) override
Evaluate function at position x-y-z and return value.
~vtkSuperquadric() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetPhiRoundness(double e)
void SetThetaRoundness(double e)
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
#define VTK_MIN_SUPERQUADRIC_THICKNESS