HighMap library (C++)
Loading...
Searching...
No Matches
hmap::NoiseFunction Class Reference

A class for generating noise functions. More...

#include <functions.hpp>

Inheritance diagram for hmap::NoiseFunction:
Collaboration diagram for hmap::NoiseFunction:

Public Member Functions

 NoiseFunction ()
 Default constructor. Initializes with default frequency scaling and seed.
 
 NoiseFunction (Vec2< float > kw)
 Constructor to initialize with specific frequency scaling.
 
 NoiseFunction (Vec2< float > kw, uint seed)
 Constructor to initialize with specific frequency scaling and seed.
 
Vec2< float > get_kw () const
 Get the frequency scaling vector.
 
uint get_seed () const
 Get the random seed.
 
virtual void set_seed (uint new_seed)
 Set a new random seed for noise generation.
 
virtual void set_kw (Vec2< float > new_kw)
 Set a new frequency scaling vector.
 
- Public Member Functions inherited from hmap::Function
 Function ()
 Default constructor. Initializes the delegate function to a default that returns 0.
 
virtual ~Function ()=default
 Virtual destructor to ensure proper cleanup in derived classes.
 
 Function (HMAP_FCT_XY_TYPE delegate)
 Constructor to initialize with a specific delegate function.
 
HMAP_FCT_XY_TYPE get_delegate () const
 Get the current delegate function.
 
float get_value (float x, float y, float ctrl_param) const
 Call the delegate function with given arguments.
 
void set_delegate (HMAP_FCT_XY_TYPE new_delegate)
 Set a new delegate function.
 

Protected Attributes

Vec2< float > kw
 Frequency scaling vector.
 
uint seed
 Random seed for noise generation.
 

Detailed Description

A class for generating noise functions.

The NoiseFunction class provides an interface for generating noise-based functions. It inherits from the Function class and adds parameters for frequency scaling (kw) and a random seed (seed) to customize the noise generation.

Constructor & Destructor Documentation

◆ NoiseFunction() [1/3]

hmap::NoiseFunction::NoiseFunction ( )
inline

Default constructor. Initializes with default frequency scaling and seed.

◆ NoiseFunction() [2/3]

hmap::NoiseFunction::NoiseFunction ( Vec2< float >  kw)
inline

Constructor to initialize with specific frequency scaling.

Parameters
kwFrequency scaling vector.

◆ NoiseFunction() [3/3]

hmap::NoiseFunction::NoiseFunction ( Vec2< float >  kw,
uint  seed 
)
inline

Constructor to initialize with specific frequency scaling and seed.

Parameters
kwFrequency scaling vector.
seedRandom seed for noise generation.

Member Function Documentation

◆ get_kw()

Vec2< float > hmap::NoiseFunction::get_kw ( ) const
inline

Get the frequency scaling vector.

Returns
The current frequency scaling vector.

◆ get_seed()

uint hmap::NoiseFunction::get_seed ( ) const
inline

Get the random seed.

Returns
The current random seed.

◆ set_seed()

◆ set_kw()

virtual void hmap::NoiseFunction::set_kw ( Vec2< float >  new_kw)
inlinevirtual

Set a new frequency scaling vector.

Parameters
new_kwThe new frequency scaling vector.

Reimplemented in hmap::ValueDelaunayNoiseFunction, hmap::ValueLinearNoiseFunction, and hmap::GenericFractalFunction.

Member Data Documentation

◆ kw

Vec2<float> hmap::NoiseFunction::kw
protected

Frequency scaling vector.

◆ seed

uint hmap::NoiseFunction::seed
protected

Random seed for noise generation.


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