E:/PROGRAMMING/X_PROJECTS/VSTUDIO/src/MODULES/Math/perlin.h File Reference

Go to the source code of this file.

Defines

#define B   0x100
#define BM   0xff
#define N   0x1000
#define NP   12
#define NM   0xfff
#define s_curve(t)   ( t * t * (3. - 2. * t) )
#define lerp(t, a, b)   ( a + t * (b - a) )
#define setup(i, b0, b1, r0, r1)
#define at2(rx, ry)   ( rx * q[0] + ry * q[1] )
#define at3(rx, ry, rz)   ( rx * q[0] + ry * q[1] + rz * q[2] )

Functions

void init (void)
double noise1 (double)
double noise2 (double *)
double noise3 (double *)
void normalize3 (double *)
void normalize2 (double *)
double PerlinNoise1D (double, double, double, int)
double PerlinNoise2D (double, double, double, double, int)
double PerlinNoise3D (double, double, double, double, double, int)


Define Documentation

#define at2 ( rx,
ry   )     ( rx * q[0] + ry * q[1] )

Definition at line 15 of file perlin.h.

Referenced by noise2().

#define at3 ( rx,
ry,
rz   )     ( rx * q[0] + ry * q[1] + rz * q[2] )

Definition at line 16 of file perlin.h.

Referenced by noise3().

#define B   0x100

Definition at line 1 of file perlin.h.

Referenced by init().

#define BM   0xff

Definition at line 2 of file perlin.h.

#define lerp ( t,
a,
 )     ( a + t * (b - a) )

Definition at line 8 of file perlin.h.

Referenced by noise1(), noise2(), and noise3().

#define N   0x1000

Definition at line 3 of file perlin.h.

#define NM   0xfff

Definition at line 5 of file perlin.h.

#define NP   12

Definition at line 4 of file perlin.h.

#define s_curve (  )     ( t * t * (3. - 2. * t) )

Definition at line 7 of file perlin.h.

Referenced by noise1(), noise2(), and noise3().

#define setup ( i,
b0,
b1,
r0,
r1   ) 

Value:

t = vec[i] + N;\
        b0 = ((int)t) & BM;\
        b1 = (b0+1) & BM;\
        r0 = t - (int)t;\
        r1 = r0 - 1.;

Definition at line 9 of file perlin.h.

Referenced by noise1(), noise2(), and noise3().


Function Documentation

void init ( void   ) 

Definition at line 140 of file perlin.cpp.

References B, g1, g2, g3, normalize2(), normalize3(), and p.

Referenced by noise1(), noise2(), and noise3().

double noise1 ( double   ) 

Definition at line 15 of file perlin.cpp.

References g1, init(), lerp, p, s_curve, setup, and start.

Referenced by PerlinNoise1D().

double noise2 ( double *   ) 

double noise3 ( double *   ) 

void normalize2 ( double *   ) 

void normalize3 ( double *   ) 

double PerlinNoise1D ( double  ,
double  ,
double  ,
int   
)

Definition at line 181 of file perlin.cpp.

References noise1(), and p.

double PerlinNoise2D ( double  ,
double  ,
double  ,
double  ,
int   
)

Definition at line 197 of file perlin.cpp.

References noise2(), and p.

double PerlinNoise3D ( double  ,
double  ,
double  ,
double  ,
double  ,
int   
)

Definition at line 215 of file perlin.cpp.

References noise3(), and p.


Generated on Wed Dec 10 03:22:17 2008 for VStudio by  doxygen 1.5.7.1