38 #ifndef vtkParametricRandomHills_h
39 #define vtkParametricRandomHills_h
41 #include "vtkCommonComputationalGeometryModule.h"
83 vtkGetMacro(NumberOfHills,
int);
92 vtkGetMacro(HillXVariance,
double);
101 vtkGetMacro(HillYVariance,
double);
110 vtkGetMacro(HillAmplitude,
double);
121 vtkGetMacro(RandomSeed,
int);
138 vtkSetClampMacro(AllowRandomGeneration,
int,0,1);
139 vtkGetMacro(AllowRandomGeneration,
int);
149 vtkGetMacro(XVarianceScaleFactor,
double);
158 vtkGetMacro(YVarianceScaleFactor,
double);
167 vtkGetMacro(AmplitudeScaleFactor,
double);
178 void Evaluate(
double uvw[3],
double Pt[3],
double Duvw[9]) VTK_OVERRIDE;
201 double HillXVariance;
202 double HillYVariance;
203 double HillAmplitude;
205 double XVarianceScaleFactor;
206 double YVarianceScaleFactor;
207 double AmplitudeScaleFactor;
208 int AllowRandomGeneration;
211 int previousNumberOfHills;
212 double previousHillXVariance;
213 double previousHillYVariance;
214 double previousHillAmplitude;
215 int previousRandomSeed;
216 double previousXVarianceScaleFactor;
217 double previousYVarianceScaleFactor;
218 double previousAmplitudeScaleFactor;
219 int previousAllowRandomGeneration;
228 void InitRNG (
int RandomSeed );
233 double Rand (
void );
246 void MakeTheHillData(
void );
251 bool ParametersChanged();
256 void CopyParameters();
dynamic, self-adjusting array of double
a simple class to control print indentation
Park and Miller Sequence of pseudo random numbers.
abstract interface for parametric functions
Generate a surface covered with randomly placed hills.
static vtkParametricRandomHills * New()
Construct a surface of random hills with the following parameters: MinimumU = -10,...
int GetDimension() override
Return the parametric dimension of the class.
double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9]) override
Calculate a user defined scalar using one or all of uvw, Pt, Duvw.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkParametricRandomHills() override
void Evaluate(double uvw[3], double Pt[3], double Duvw[9]) override
Construct a terrain consisting of hills on a surface.
vtkParametricRandomHills()
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.