CL_PerlinNoise Class Reference
[clanDisplay Display]

Perlin Noise Generator class. More...

#include <perlin_noise.h>

List of all members.

Public Member Functions

Construction

 CL_PerlinNoise ()
 Constructor.
virtual ~CL_PerlinNoise ()
 Destructor.
Attributes

CL_PixelBuffer create_noise1d (float start_x, float end_x)
 Create the perlin noise.
CL_PixelBuffer create_noise2d (float start_x, float end_x, float start_y, float end_y)
 Create the perlin noise.
CL_PixelBuffer create_noise3d (float start_x, float end_x, float start_y, float end_y, float z_position)
 Create the perlin noise.
CL_PixelBuffer create_noise4d (float start_x, float end_x, float start_y, float end_y, float z_position, float w_position)
 Create the perlin noise.
CL_Size get_size () const
 Get the size of the output pixelbuffer.
CL_TextureFormat get_format () const
 Get the format of the output pixelbuffer.
float get_amplitude () const
 Get the amplitude of the perlin noise.
int get_octaves () const
 Get the number of octaves of the perlin noise.
Operations

void set_permutations (const unsigned char *table, unsigned int size=256)
 Set the permutation table.
void set_size (int width=256, int height=256)
 Set the size of the output pixelbuffer.
void set_size (const CL_Size &size)
 Set the size of the output pixelbuffer.
void set_format (CL_TextureFormat sized_format=cl_rgb8)
 Set the format of the output pixelbuffer.
void set_amplitude (float amplitude=1.0f)
 Set the amplitude of the perlin noise.
void set_octaves (int octaves=1)
 Set the number of octaves of the perlin noise.

Detailed Description

Perlin Noise Generator class.


Constructor & Destructor Documentation

CL_PerlinNoise::CL_PerlinNoise (  ) 

Constructor.

virtual CL_PerlinNoise::~CL_PerlinNoise (  )  [virtual]

Destructor.


Member Function Documentation

CL_PixelBuffer CL_PerlinNoise::create_noise1d ( float  start_x,
float  end_x 
)

Create the perlin noise.

Remember to call set_size() with the height set to 1.
The period of these parameters are from 0 to 255

Parameters:
start_x = Start x position of the noise
end_x = End x position of the noise
start_y = Start y position of the noise
end_y = End y position of the noise
CL_PixelBuffer CL_PerlinNoise::create_noise2d ( float  start_x,
float  end_x,
float  start_y,
float  end_y 
)

Create the perlin noise.

The period of these parameters are from 0 to 255

Parameters:
start_x = Start x position of the noise
end_x = End x position of the noise
start_y = Start y position of the noise
end_y = End y position of the noise
CL_PixelBuffer CL_PerlinNoise::create_noise3d ( float  start_x,
float  end_x,
float  start_y,
float  end_y,
float  z_position 
)

Create the perlin noise.

The period of these parameters are from 0 to 255

Parameters:
start_x = Start x position of the noise
end_x = End x position of the noise
start_y = Start y position of the noise
end_y = End y position of the noise
z_position = The z position of the noise
CL_PixelBuffer CL_PerlinNoise::create_noise4d ( float  start_x,
float  end_x,
float  start_y,
float  end_y,
float  z_position,
float  w_position 
)

Create the perlin noise.

The period of these parameters are from 0 to 255

Parameters:
start_x = Start x position of the noise
end_x = End x position of the noise
start_y = Start y position of the noise
end_y = End y position of the noise
z_position = The z position of the noise
w_position = The w position of the noise
float CL_PerlinNoise::get_amplitude (  )  const

Get the amplitude of the perlin noise.

CL_TextureFormat CL_PerlinNoise::get_format (  )  const

Get the format of the output pixelbuffer.

int CL_PerlinNoise::get_octaves (  )  const

Get the number of octaves of the perlin noise.

CL_Size CL_PerlinNoise::get_size (  )  const

Get the size of the output pixelbuffer.

void CL_PerlinNoise::set_amplitude ( float  amplitude = 1.0f  ) 

Set the amplitude of the perlin noise.

If this function is not used, the amplitude defaults to 1.0f

Parameters:
amplitude = The amplitude to set
void CL_PerlinNoise::set_format ( CL_TextureFormat  sized_format = cl_rgb8  ) 

Set the format of the output pixelbuffer.

If this function is not used, the format defaults to cl_rgb8
These following formats are supported:
cl_rgba8, cl_rgb8, cl_r8, cl_r32f

Parameters:
format = The specified format
void CL_PerlinNoise::set_octaves ( int  octaves = 1  ) 

Set the number of octaves of the perlin noise.

If this function is not used, the octaves count defaults to 1

Parameters:
octaves = The number of octaves to set
void CL_PerlinNoise::set_permutations ( const unsigned char *  table,
unsigned int  size = 256 
)

Set the permutation table.

If this function is not used, this class uses rand() to create a permutation table instead

Parameters:
table = The permutation table
size = The permutation table size (2,4,8,16,32,64,128,256). Usually 256 (the maximum) unless a lower periodic table is required
void CL_PerlinNoise::set_size ( int  width = 256,
int  height = 256 
)

Set the size of the output pixelbuffer.

If this function is not used, the size defaults to 256x256

Parameters:
width = Output pixelbuffer width
height = Output pixelbuffer height
void CL_PerlinNoise::set_size ( const CL_Size size  ) 

Set the size of the output pixelbuffer.

If this function is not used, the size defaults to 256x256

Parameters:
width = Output pixelbuffer width
height = Output pixelbuffer height

The documentation for this class was generated from the following file: