Core 1.0
ExponentialSimplexNoise Class Reference

Exponential noise functions based on simplex noise. More...

#include <noise.h>

Inheritance diagram for ExponentialSimplexNoise:
SimplexNoise2 AnalyticScalarField2

Public Member Functions

double Value (const Vector2 &) const
 Compute the expoential simplex noise at a given point.
 
virtual ScalarField2 Sample (const Array2 &) const
 Create a discrete scalar field by sampling a given domain.
 

Protected Member Functions

double Exponential (const double &) const
 Approximates an exponentially distribution from a uniform.
 
- Protected Member Functions inherited from SimplexNoise2
 SimplexNoise2 ()
 Empty.
 
 ~SimplexNoise2 ()
 Empty.
 
double Value (const Vector2 &) const
 Compute the simplex noise at a given point.
 
double K () const
 Return the global Lipschitz constant of the noise.
 
- Protected Member Functions inherited from AnalyticScalarField2
Matrix Local (const Vector2 &) const
 Compute the local neighborhood in the one-ring aroung a point.
 
 AnalyticScalarField2 (bool=true)
 Constructor.
 
virtual Vector2 Gradient (const Vector2 &) const
 Compute the gradient of the field.
 
virtual Matrix2 Hessian (const Vector2 &) const
 Compute the hessian at a given point.
 
bool Inside (const double &) const
 Check if the value is considered as inside or outside.
 
void Curvature (const Vector2 &, double &, double &) const
 Compute the gaussian and mean curvatures.
 
virtual Box2 GetBox () const
 Return the bounding box.
 

Additional Inherited Members

- Protected Attributes inherited from AnalyticScalarField2
bool sign = true
 Sign convention, used for normal computation.
 
Box2 box = Box2::Infinity
 Domain, set as infinite for base class.
 
- Static Protected Attributes inherited from SimplexNoise2
static const Vector2 grad2 [8]
 Array of gradients.
 
static const int perm [512]
 Permutation table, 256 entries duplicated once to avoid modulo computations.
 
static const double G2 = (3.0 - sqrt(3.0)) / 6.0
 Unskew factors for planar case.
 
- Static Protected Attributes inherited from AnalyticScalarField2
static const double epsilon = 1e-6
 \epsilon; value for partial derivatives
 

Detailed Description

Exponential noise functions based on simplex noise.

See also
Noise

Member Function Documentation

◆ Exponential()

double ExponentialSimplexNoise::Exponential ( const double & x) const
protected

Approximates an exponentially distribution from a uniform.

Parameters
xShould be in unit interval

◆ Sample()

ScalarField2 AnalyticScalarField2::Sample ( const Array2 & a) const
virtual

Create a discrete scalar field by sampling a given domain.

Parameters
aDomain.

Reimplemented from AnalyticScalarField2.

◆ Value()

double ExponentialSimplexNoise::Value ( const Vector2 & p) const
virtual

Compute the expoential simplex noise at a given point.

Parameters
pPoint.

Reimplemented from AnalyticScalarField2.