Perlin Noise Generator class. More...
#include <perlin_noise.h>
Public Member Functions | |
| PerlinNoise () | |
| Constructor. | |
| virtual | ~PerlinNoise () |
| Destructor. | |
| PixelBuffer | create_noise1d (float start_x, float end_x) |
| Create the perlin noise. | |
| PixelBuffer | create_noise2d (float start_x, float end_x, float start_y, float end_y) |
| Create the perlin noise. | |
| PixelBuffer | create_noise3d (float start_x, float end_x, float start_y, float end_y, float z_position) |
| Create the perlin noise. | |
| 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. | |
| float | get_amplitude () const |
| Get the amplitude of the perlin noise. | |
| TextureFormat | get_format () const |
| Get the format of the output pixelbuffer. | |
| int | get_octaves () const |
| Get the number of octaves of the perlin noise. | |
| Size | get_size () const |
| Get the size of the output pixelbuffer. | |
| void | set_amplitude (float amplitude=1.0f) |
| Set the amplitude of the perlin noise. | |
| void | set_format (TextureFormat texture_format=TextureFormat::rgb8) |
| Set the format of the output pixelbuffer. | |
| void | set_octaves (int octaves=1) |
| Set the number of octaves of the perlin noise. | |
| void | set_permutations (const unsigned char *table, unsigned int size=256) |
| Set the permutation table. | |
| void | set_size (const Size &size) |
| Set the size of the output pixelbuffer. | |
| void | set_size (int width=256, int height=256) |
| Set the size of the output pixelbuffer. | |
Perlin Noise Generator class.
| clan::PerlinNoise::PerlinNoise | ( | ) |
Constructor.
|
virtual |
Destructor.
| PixelBuffer clan::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
| 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 |
| PixelBuffer clan::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
| 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 |
| PixelBuffer clan::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
| 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 |
| PixelBuffer clan::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
| 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 clan::PerlinNoise::get_amplitude | ( | ) | const |
Get the amplitude of the perlin noise.
| TextureFormat clan::PerlinNoise::get_format | ( | ) | const |
Get the format of the output pixelbuffer.
| int clan::PerlinNoise::get_octaves | ( | ) | const |
Get the number of octaves of the perlin noise.
| Size clan::PerlinNoise::get_size | ( | ) | const |
Get the size of the output pixelbuffer.
| void clan::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
| amplitude | = The amplitude to set |
| void clan::PerlinNoise::set_format | ( | TextureFormat | texture_format = TextureFormat::rgb8 | ) |
Set the format of the output pixelbuffer.
If this function is not used, the format defaults to TextureFormat::rgb8
These following formats are supported:
TextureFormat::rgba8, TextureFormat::rgb8, TextureFormat::r8, tf_r32f
| format | = The specified format |
| void clan::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
| octaves | = The number of octaves to set |
| void clan::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
| 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 clan::PerlinNoise::set_size | ( | const Size & | size | ) |
Set the size of the output pixelbuffer.
If this function is not used, the size defaults to 256x256
| width | = Output pixelbuffer width |
| height | = Output pixelbuffer height |
| void clan::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
| width | = Output pixelbuffer width |
| height | = Output pixelbuffer height |