vtkPerlinNoise.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00041 #ifndef __vtkPerlinNoise_h
00042 #define __vtkPerlinNoise_h
00043
00044 #include "vtkImplicitFunction.h"
00045
00046 class VTK_FILTERING_EXPORT vtkPerlinNoise : public vtkImplicitFunction
00047 {
00048 public:
00049 vtkTypeRevisionMacro(vtkPerlinNoise,vtkImplicitFunction);
00050 void PrintSelf(ostream& os, vtkIndent indent);
00051
00053 static vtkPerlinNoise *New();
00054
00056
00057 float EvaluateFunction(float x[3]);
00058 float EvaluateFunction(float x, float y, float z)
00059 {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
00061
00064 void EvaluateGradient(float x[3], float n[3]);
00065
00067
00070 vtkSetVector3Macro(Frequency,float);
00071 vtkGetVectorMacro(Frequency,float,3);
00073
00075
00079 vtkSetVector3Macro(Phase,float);
00080 vtkGetVectorMacro(Phase,float,3);
00082
00084
00086 vtkSetMacro(Amplitude,float);
00087 vtkGetMacro(Amplitude,float);
00089
00090 protected:
00091 vtkPerlinNoise();
00092 ~vtkPerlinNoise() {}
00093
00094 float Frequency[3];
00095 float Phase[3];
00096 float Amplitude;
00097
00098 private:
00099 vtkPerlinNoise(const vtkPerlinNoise&);
00100 void operator=(const vtkPerlinNoise&);
00101 };
00102
00103 #endif