38 #ifndef vtkParametricRandomHills_h
39 #define vtkParametricRandomHills_h
41 #include "vtkCommonComputationalGeometryModule.h"
82 vtkSetMacro(NumberOfHills,
int);
83 vtkGetMacro(NumberOfHills,
int);
91 vtkSetMacro(HillXVariance,
double);
92 vtkGetMacro(HillXVariance,
double);
100 vtkSetMacro(HillYVariance,
double);
101 vtkGetMacro(HillYVariance,
double);
109 vtkSetMacro(HillAmplitude,
double);
110 vtkGetMacro(HillAmplitude,
double);
120 vtkSetMacro(RandomSeed,
int);
121 vtkGetMacro(RandomSeed,
int);
138 vtkSetClampMacro(AllowRandomGeneration,
vtkTypeBool, 0, 1);
140 vtkBooleanMacro(AllowRandomGeneration,
vtkTypeBool);
148 vtkSetMacro(XVarianceScaleFactor,
double);
149 vtkGetMacro(XVarianceScaleFactor,
double);
157 vtkSetMacro(YVarianceScaleFactor,
double);
158 vtkGetMacro(YVarianceScaleFactor,
double);
166 vtkSetMacro(AmplitudeScaleFactor,
double);
167 vtkGetMacro(AmplitudeScaleFactor,
double);
178 void Evaluate(
double uvw[3],
double Pt[3],
double Duvw[9])
override;
193 double EvaluateScalar(
double uvw[3],
double Pt[3],
double Duvw[9])
override;
228 void InitRNG(
int RandomSeed);
246 void MakeTheHillData(
void);
251 bool ParametersChanged();
256 void CopyParameters();
int previousNumberOfHills
vtkTypeBool AllowRandomGeneration
Generate a surface covered with randomly placed hills.
double XVarianceScaleFactor
int previousAllowRandomGeneration
double previousAmplitudeScaleFactor
virtual double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9])=0
Calculate a user defined scalar using one or all of uvw, Pt, Duvw.
virtual void Evaluate(double uvw[3], double Pt[3], double Duvw[9])=0
Performs the mapping $f(uvw)->(Pt,Duvw)$f.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int GetDimension() override
Return the parametric dimension of the class.
dynamic, self-adjusting array of double
double previousHillXVariance
abstract interface for parametric functions
a simple class to control print indentation
double previousHillYVariance
Park and Miller Sequence of pseudo random numbers.
double AmplitudeScaleFactor
double YVarianceScaleFactor
double previousXVarianceScaleFactor
double previousHillAmplitude
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
double previousYVarianceScaleFactor