The PerlinNoise class implements a two dimensional noise function using multiple selectable gradient vector grids (layers).
More...
#include <perlinnoise.h>
|
static const float | fScale = sqrt(2.f) / 2.f |
|
The PerlinNoise class implements a two dimensional noise function using multiple selectable gradient vector grids (layers).
terminus::PerlinNoise::PerlinNoise |
( |
| ) |
|
terminus::PerlinNoise::PerlinNoise |
( |
unsigned int |
seed | ) |
|
float terminus::PerlinNoise::asymmetricRnd |
( |
| ) |
const |
- Returns
- a single random value from [0.0;1.0]
float terminus::PerlinNoise::dotGradient |
( |
int |
layer, |
|
|
int |
iX, |
|
|
int |
iY, |
|
|
float |
x, |
|
|
float |
y |
|
) |
| const |
|
protected |
void terminus::PerlinNoise::generateGradients |
( |
int |
layer | ) |
const |
|
protected |
int terminus::PerlinNoise::gradientIndex |
( |
int |
iX, |
|
|
int |
iY |
|
) |
| const |
|
protected |
std::vector< QVector2D > & terminus::PerlinNoise::gradients |
( |
int |
layer | ) |
const |
|
protected |
float terminus::PerlinNoise::noise |
( |
int |
layer, |
|
|
float |
x, |
|
|
float |
y |
|
) |
| const |
evaluates the noise function at the given coordinates
- Parameters
-
- Returns
- noise value
The coordinates can exceed the size of the gradient grid, as they will be wrapped.
void terminus::PerlinNoise::seed |
( |
unsigned int |
seed | ) |
|
seeds the underlying random number generator and invalidates the previously generated gradient grids
- Parameters
-
unsigned int terminus::PerlinNoise::seed |
( |
| ) |
const |
- Returns
- the seed that was last used to seed the underlying random number generator
float terminus::PerlinNoise::symmetricRnd |
( |
| ) |
const |
- Returns
- a single random value from [-1.0;1.0]
const float terminus::PerlinNoise::fScale = sqrt(2.f) / 2.f |
|
staticprotected |
std::uniform_real_distribution<float> terminus::PerlinNoise::m_distAsym |
|
mutableprotected |
std::uniform_real_distribution<float> terminus::PerlinNoise::m_distSym |
|
mutableprotected |
int terminus::PerlinNoise::m_gradientCount |
|
protected |
std::map<int,std::vector<QVector2D> > terminus::PerlinNoise::m_gradientGrid |
|
mutableprotected |
std::default_random_engine terminus::PerlinNoise::m_rng |
|
mutableprotected |
unsigned int terminus::PerlinNoise::m_seed |
|
protected |
The documentation for this class was generated from the following files: