A portable, open-source, coherent noise-generating library for C++

Main Page | Modules | Class Hierarchy | Class List | File List | Class Members

# noise::module::Billow Class Reference
[Generator Modules]

`#include <billow.h>`

Inheritance diagram for noise::module::Billow:

List of all members.

## Detailed Description

Noise module that outputs three-dimensional "billowy" noise.

This noise module generates "billowy" noise suitable for clouds and rocks.

This noise module is nearly identical to noise::module::Perlin except this noise module modifies each octave with an absolute-value function. See the documentation of noise::module::Perlin for more information.

## Public Member Functions

| Billow ()
| Constructor.
double | GetFrequency () const
| Returns the frequency of the first octave.
double | GetLacunarity () const
| Returns the lacunarity of the billowy noise.
noise::NoiseQuality | GetNoiseQuality () const
| Returns the quality of the billowy noise.
int | GetOctaveCount () const
| Returns the number of octaves that generate the billowy noise.
double | GetPersistence () const
| Returns the persistence value of the billowy noise.
int | GetSeed () const
| Returns the seed value used by the billowy-noise function.
virtual int | GetSourceModuleCount () const
| Returns the number of source modules required by this noise module.
virtual double | GetValue (double x, double y, double z) const
| Generates an output value given the coordinates of the specified input value.
void | SetFrequency (double frequency)
| Sets the frequency of the first octave.
void | SetLacunarity (double lacunarity)
| Sets the lacunarity of the billowy noise.
void | SetNoiseQuality (noise::NoiseQuality noiseQuality)
| Sets the quality of the billowy noise.
void | SetOctaveCount (int octaveCount)
| Sets the number of octaves that generate the billowy noise.
void | SetPersistence (double persistence)
| Sets the persistence value of the billowy noise.
void | SetSeed (int seed)
| Sets the seed value used by the billowy-noise function.

## Protected Attributes

double | m_frequency
| Frequency of the first octave.
double | m_lacunarity
| Frequency multiplier between successive octaves.
noise::NoiseQuality | m_noiseQuality
| Quality of the billowy noise.
int | m_octaveCount
| Total number of octaves that generate the billowy noise.
double | m_persistence
| Persistence value of the billowy noise.
int | m_seed
| Seed value used by the billowy-noise function.

## Constructor & Destructor Documentation

Billow::Billow | ( |  | ) |

| Constructor. The default frequency is set to noise::module::DEFAULT_BILLOW_FREQUENCY. The default lacunarity is set to noise::module::DEFAULT_BILLOW_LACUNARITY. The default number of octaves is set to noise::module::DEFAULT_BILLOW_OCTAVE_COUNT. The default persistence value is set to noise::module::DEFAULT_BILLOW_PERSISTENCE. The default seed value is set to noise::module::DEFAULT_BILLOW_SEED.

## Member Function Documentation

double noise::module::Billow::GetFrequency | ( |  | ) | const`[inline]`

Returns the frequency of the first octave.

Returns:
  The frequency of the first octave.

double noise::module::Billow::GetLacunarity | ( |  | ) | const`[inline]`

Returns the lacunarity of the billowy noise.

Returns:
  The lacunarity of the billowy noise.

The lacunarity is the frequency multiplier between successive octaves.

noise::NoiseQuality noise::module::Billow::GetNoiseQuality | ( |  | ) | const`[inline]`

Returns the quality of the billowy noise.

Returns:
  The quality of the billowy noise.

See noise::NoiseQuality for definitions of the various coherent-noise qualities.

int noise::module::Billow::GetOctaveCount | ( |  | ) | const`[inline]`

Returns the number of octaves that generate the billowy noise.

Returns:
  The number of octaves that generate the billowy noise.

The number of octaves controls the amount of detail in the billowy noise.

double noise::module::Billow::GetPersistence | ( |  | ) | const`[inline]`

Returns the persistence value of the billowy noise.

Returns:
  The persistence value of the billowy noise.

The persistence value controls the roughness of the billowy noise.

int noise::module::Billow::GetSeed | ( |  | ) | const`[inline]`

Returns the seed value used by the billowy-noise function.

Returns:
  The seed value.

virtual int noise::module::Billow::GetSourceModuleCount | ( |  | ) | const`[inline, virtual]`

Returns the number of source modules required by this noise module.

Returns:
  The number of source modules required by this noise module.

Implements noise::module::Module.

double Billow::GetValue | ( | double | x,
|  | double | y,
|  | double | z
| ) | const`[virtual]`

Generates an output value given the coordinates of the specified input value.

Parameters:

  | x | The x coordinate of the input value.
  | y | The y coordinate of the input value.
  | z | The z coordinate of the input value.

Returns:
  The output value.

Precondition:
  All source modules required by this noise module have been passed to the SetSourceModule() method.

Before an application can call this method, it must first connect all required source modules via the SetSourceModule() method. If these source modules are not connected to this noise module, this method raises a debug assertion.

To determine the number of source modules required by this noise module, call the GetSourceModuleCount() method.

Implements noise::module::Module.

void noise::module::Billow::SetFrequency | ( | double | frequency | ) | `[inline]`

Sets the frequency of the first octave.

Parameters:

  | frequency | The frequency of the first octave.

void noise::module::Billow::SetLacunarity | ( | double | lacunarity | ) | `[inline]`

Sets the lacunarity of the billowy noise.

Parameters:

  | lacunarity | The lacunarity of the billowy noise.

The lacunarity is the frequency multiplier between successive octaves.

For best results, set the lacunarity to a number between 1.5 and 3.5.

void noise::module::Billow::SetNoiseQuality | ( | noise::NoiseQuality | noiseQuality | ) | `[inline]`

Sets the quality of the billowy noise.

Parameters:

  | noiseQuality | The quality of the billowy noise.

See noise::NoiseQuality for definitions of the various coherent-noise qualities.

void noise::module::Billow::SetOctaveCount | ( | int | octaveCount | ) | `[inline]`

Sets the number of octaves that generate the billowy noise.

Parameters:

  | octaveCount | The number of octaves that generate the billowy noise.

Precondition:
  The number of octaves ranges from 1 to noise::module::BILLOW_MAX_OCTAVE.

Exceptions:

  | noise::ExceptionInvalidParam | An invalid parameter was specified; see the preconditions for more information.

The number of octaves controls the amount of detail in the billowy noise.

The larger the number of octaves, the more time required to calculate the billowy-noise value.

void noise::module::Billow::SetPersistence | ( | double | persistence | ) | `[inline]`

Sets the persistence value of the billowy noise.

Parameters:

  | persistence | The persistence value of the billowy noise.

The persistence value controls the roughness of the billowy noise.

For best results, set the persistence value to a number between 0.0 and 1.0.

void noise::module::Billow::SetSeed | ( | int | seed | ) | `[inline]`

Sets the seed value used by the billowy-noise function.

Parameters:

  | seed | The seed value.

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

- billow.h
- billow.cpp