|
Core 1.0
|
Fractal Brownian motion from a cellular noise function. More...
#include <turbulence.h>
Public Member Functions | |
| CellularTurbulence2 (const double &, const double &, const double &, const double &=0.5, const double &=0.5, int=8, const Vector2 &=Vector2::Null) | |
| Create a scaled turbulence. | |
| CellularTurbulence2 () | |
| Unit turbulence. | |
| ~CellularTurbulence2 () | |
| Empty. | |
| virtual double | Value (const Vector2 &) const |
| Compute the value of the field. | |
Protected Member Functions | |
| double | UnitAt (const Vector2 &) const |
| Compute the turbulence value at a given point. | |
Protected Attributes | |
| double | alpha = 0.5 |
| Amplitude attenuation coefficient. | |
| double | lambda = 0.5 |
| Wavelength amplification coefficient. | |
| int | octaves = 4 |
| Number of octaves. | |
| Vector2 | t = Vector2::Null |
| Translation. | |
| double | v0 = 0.0 |
| Base value. | |
| double | a0 = 1.0 |
| Base amplitude. | |
| double | l0 = 1.0 |
| Wavelength. | |
Static Protected Attributes | |
| static const Matrix2 | R2 = Matrix2::Rotation(4.0 * Math::Pi / 19.0) |
| Random incremental rotation in the plane. | |
Fractal Brownian motion from a cellular noise function.
|
explicit |
Create a scaled turbulence.
| v,a,l | Base value, amplitude and wavelength. |
| alpha | Amplitude attenuation factor (~0.5, should be less than 1.0). |
| lambda | Wavelength attenuation factor (~0.5, should be less than 1.0). |
| octaves | Number of octaves. |
| t | Translation offset. |
|
protected |
Compute the turbulence value at a given point.
Sums a series of scaled noise functions.
| p | Point. |
|
virtual |