Honeycomb  0.1
Component-Model Framework
Public Types | Public Member Functions | List of all members
honey::SimplexNoise< Dim, Real > Class Template Reference

Generate smooth noise over space. Implementation of Perlin's "Simplex Noise" generator. More...

#include <Simplex.h>

Inheritance diagram for honey::SimplexNoise< Dim, Real >:
Inheritance graph
[legend]
Collaboration diagram for honey::SimplexNoise< Dim, Real >:
Collaboration graph
[legend]

Public Types

typedef Vec< Dim, RealVec
 

Public Member Functions

 SimplexNoise (RandomGen &gen, int size=256)
 
Real noise (const Vec &x, optional< Vec & > dx=optnull)
 Get value at point in noise field. Returns noise in range [-1, 1]. More...
 

Detailed Description

template<int Dim, class Real>
class honey::SimplexNoise< Dim, Real >

Generate smooth noise over space. Implementation of Perlin's "Simplex Noise" generator.

Template Parameters
DimDimension of field, range [1,4]

Member Typedef Documentation

template<int Dim, class Real >
typedef Vec<Dim,Real> honey::SimplexNoiseCommon< Subclass, Dim, Real >::Vec

Constructor & Destructor Documentation

template<int Dim, class Real >
honey::SimplexNoise< Dim, Real >::SimplexNoise ( RandomGen gen,
int  size = 256 
)
Parameters
genGenerator used to create noise. The generator is only used during construction.
sizeSize of noise field. A power of two is recommended for speed. Field range is [0, size], mirrored about the origin and wrapping for values larger than size.

Member Function Documentation

template<class Real >
Real honey::SimplexNoise< Real >::noise ( const Vec x,
optional< Vec & >  dx = optnull 
)

Get value at point in noise field. Returns noise in range [-1, 1].

Parameters
xPoint in noise field
dxIf specified, gradient (spacial derivative) at point x will be returned here.

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