Panda3D
|
Implements a multi-layer PerlinNoise, with one or more high-frequency noise functions added to a lower-frequency base noise function. More...
#include <pandadoc.hpp>
Public Member Functions | |
__init__ () | |
Creates a StackedPerlinNoise3 object with no levels. More... | |
__init__ (const StackedPerlinNoise3 copy) | |
Creates an exact duplicate of the existing StackedPerlinNoise3 object, including the random seed. More... | |
__init__ (double sx, double sy, double sz, int num_levels, double scale_factor, double amp_scale, int table_size, unsigned long int seed) | |
Creates num_levels nested PerlinNoise3 objects. More... | |
addLevel (const PerlinNoise3 level, double amp) | |
Adds an arbitrary PerlinNoise3 object, and an associated amplitude, to the stack. More... | |
clear () | |
Removes all levels from the stack. More... | |
double | noise (const LVecBase3d value) |
Returns the noise function of the three inputs. More... | |
float | noise (const LVecBase3f value) |
Returns the noise function of the three inputs. More... | |
double | noise (double x, double y, double z) |
Returns the noise function of the three inputs. More... | |
double | operator() (const LVecBase3d value) |
float | operator() (const LVecBase3f value) |
double | operator() (double x, double y, double z) |
StackedPerlinNoise3 | operator= (const StackedPerlinNoise3 copy) |
Implements a multi-layer PerlinNoise, with one or more high-frequency noise functions added to a lower-frequency base noise function.
__init__ | ( | ) |
Creates a StackedPerlinNoise3 object with no levels.
You should call add_level() to add each level by hand.
__init__ | ( | const StackedPerlinNoise3 | copy | ) |
Creates an exact duplicate of the existing StackedPerlinNoise3 object, including the random seed.
__init__ | ( | double | sx, |
double | sy, | ||
double | sz, | ||
int | num_levels, | ||
double | scale_factor, | ||
double | amp_scale, | ||
int | table_size, | ||
unsigned long int | seed | ||
) |
Creates num_levels nested PerlinNoise3 objects.
Each stacked Perlin object will have a scale of 1 scale_factor times the previous object (so that it is higher-frequency, if scale_factor > 1), and an amplitude of amp_scale times the previous object (so that it is less important, if amp_scale < 1).
addLevel | ( | const PerlinNoise3 | level, |
double | amp | ||
) |
Adds an arbitrary PerlinNoise3 object, and an associated amplitude, to the stack.
clear | ( | ) |
Removes all levels from the stack.
You must call add_level() again to restore them.
double noise | ( | const LVecBase3d | value | ) |
Returns the noise function of the three inputs.
float noise | ( | const LVecBase3f | value | ) |
Returns the noise function of the three inputs.
double noise | ( | double | x, |
double | y, | ||
double | z | ||
) |
Returns the noise function of the three inputs.
double operator() | ( | const LVecBase3d | value | ) |
float operator() | ( | const LVecBase3f | value | ) |
double operator() | ( | double | x, |
double | y, | ||
double | z | ||
) |
StackedPerlinNoise3 operator= | ( | const StackedPerlinNoise3 | copy | ) |