[][src]Trait nannou::noise::NoiseFn

pub trait NoiseFn<T> {
    fn get(&self, point: T) -> f64;
}

Base trait for noise functions.

A noise function is a object that calculates and outputs a value given a n-Dimensional input value, where n is (2,3,4).

Each type of noise function uses a specific method to calculate an output value. Some of these methods include:

  • Calculating a value using a coherent-noise function or some other mathematical function.
  • Mathematically changing the output value from another noise function in various ways.
  • Combining the output values from two noise functions in various ways.

Required methods

fn get(&self, point: T) -> f64

Loading content...

Implementations on Foreign Types

impl<'a, T, M> NoiseFn<T> for &'a M where
    M: NoiseFn<T>, 
[src]

Loading content...

Implementors

impl NoiseFn<[f64; 2]> for SuperSimplex[src]

2-dimensional Super Simplex noise

impl NoiseFn<[f64; 2]> for OpenSimplex[src]

2-dimensional OpenSimplex Noise

This is a slower but higher quality form of gradient noise than Perlin 2D.

impl NoiseFn<[f64; 2]> for Worley[src]

impl NoiseFn<[f64; 2]> for Cylinders[src]

impl NoiseFn<[f64; 2]> for Billow[src]

2-dimensional Billow noise

impl NoiseFn<[f64; 2]> for BasicMulti[src]

2-dimensional BasicMulti noise

impl NoiseFn<[f64; 2]> for Fbm[src]

2-dimensional Fbm noise

impl NoiseFn<[f64; 2]> for RidgedMulti[src]

2-dimensional RidgedMulti noise

impl NoiseFn<[f64; 2]> for HybridMulti[src]

2-dimensional HybridMulti noise

impl NoiseFn<[f64; 2]> for Perlin[src]

2-dimensional perlin noise

impl NoiseFn<[f64; 2]> for Value[src]

2-dimensional value noise

impl NoiseFn<[f64; 2]> for Checkerboard[src]

impl NoiseFn<[f64; 3]> for BasicMulti[src]

3-dimensional BasicMulti noise

impl NoiseFn<[f64; 3]> for Fbm[src]

3-dimensional Fbm noise

impl NoiseFn<[f64; 3]> for RidgedMulti[src]

3-dimensional RidgedMulti noise

impl NoiseFn<[f64; 3]> for Checkerboard[src]

impl NoiseFn<[f64; 3]> for Worley[src]

impl NoiseFn<[f64; 3]> for OpenSimplex[src]

3-dimensional OpenSimplex Noise

This is a slower but higher quality form of gradient noise than Perlin 3D.

impl NoiseFn<[f64; 3]> for Value[src]

3-dimensional value noise

impl NoiseFn<[f64; 3]> for HybridMulti[src]

3-dimensional HybridMulti noise

impl NoiseFn<[f64; 3]> for SuperSimplex[src]

3-dimensional Super Simplex noise

impl NoiseFn<[f64; 3]> for Cylinders[src]

impl NoiseFn<[f64; 3]> for Perlin[src]

3-dimensional perlin noise

impl NoiseFn<[f64; 3]> for Billow[src]

3-dimensional Billow noise

impl NoiseFn<[f64; 4]> for HybridMulti[src]

4-dimensional HybridMulti noise

impl NoiseFn<[f64; 4]> for Cylinders[src]

impl NoiseFn<[f64; 4]> for Billow[src]

4-dimensional Billow noise

impl NoiseFn<[f64; 4]> for Value[src]

4-dimensional value noise

impl NoiseFn<[f64; 4]> for RidgedMulti[src]

4-dimensional RidgedMulti noise

impl NoiseFn<[f64; 4]> for Worley[src]

impl NoiseFn<[f64; 4]> for Perlin[src]

4-dimensional perlin noise

impl NoiseFn<[f64; 4]> for BasicMulti[src]

4-dimensional BasicMulti noise

impl NoiseFn<[f64; 4]> for OpenSimplex[src]

4-dimensional OpenSimplex Noise

This is a slower but higher quality form of gradient noise than Perlin 4D.

impl NoiseFn<[f64; 4]> for Checkerboard[src]

impl NoiseFn<[f64; 4]> for Fbm[src]

4-dimensional Fbm noise

impl<'a, T> NoiseFn<T> for Abs<'a, T>[src]

impl<'a, T> NoiseFn<T> for Add<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for Blend<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for Clamp<'a, T>[src]

impl<'a, T> NoiseFn<T> for Curve<'a, T>[src]

impl<'a, T> NoiseFn<T> for Exponent<'a, T>[src]

impl<'a, T> NoiseFn<T> for Invert<'a, T>[src]

impl<'a, T> NoiseFn<T> for Max<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for Min<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for Multiply<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for Power<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for ScaleBias<'a, T>[src]

impl<'a, T> NoiseFn<T> for Select<'a, T> where
    T: Copy
[src]

impl<'a, T> NoiseFn<T> for Terrace<'a, T>[src]

impl<Source> NoiseFn<[f64; 2]> for Cache<Source> where
    Source: NoiseFn<[f64; 2]>, 
[src]

impl<Source> NoiseFn<[f64; 2]> for RotatePoint<Source> where
    Source: NoiseFn<[f64; 2]>, 
[src]

impl<Source> NoiseFn<[f64; 2]> for ScalePoint<Source> where
    Source: NoiseFn<[f64; 2]>, 
[src]

impl<Source> NoiseFn<[f64; 2]> for TranslatePoint<Source> where
    Source: NoiseFn<[f64; 2]>, 
[src]

impl<Source> NoiseFn<[f64; 2]> for Turbulence<Source> where
    Source: NoiseFn<[f64; 2]>, 
[src]

impl<Source> NoiseFn<[f64; 3]> for Cache<Source> where
    Source: NoiseFn<[f64; 3]>, 
[src]

impl<Source> NoiseFn<[f64; 3]> for RotatePoint<Source> where
    Source: NoiseFn<[f64; 3]>, 
[src]

impl<Source> NoiseFn<[f64; 3]> for ScalePoint<Source> where
    Source: NoiseFn<[f64; 3]>, 
[src]

impl<Source> NoiseFn<[f64; 3]> for TranslatePoint<Source> where
    Source: NoiseFn<[f64; 3]>, 
[src]

impl<Source> NoiseFn<[f64; 3]> for Turbulence<Source> where
    Source: NoiseFn<[f64; 3]>, 
[src]

impl<Source> NoiseFn<[f64; 4]> for Cache<Source> where
    Source: NoiseFn<[f64; 4]>, 
[src]

impl<Source> NoiseFn<[f64; 4]> for RotatePoint<Source> where
    Source: NoiseFn<[f64; 4]>, 
[src]

impl<Source> NoiseFn<[f64; 4]> for ScalePoint<Source> where
    Source: NoiseFn<[f64; 4]>, 
[src]

impl<Source> NoiseFn<[f64; 4]> for TranslatePoint<Source> where
    Source: NoiseFn<[f64; 4]>, 
[src]

impl<Source> NoiseFn<[f64; 4]> for Turbulence<Source> where
    Source: NoiseFn<[f64; 4]>, 
[src]

impl<Source, XDisplace, YDisplace, ZDisplace, UDisplace> NoiseFn<[f64; 2]> for Displace<Source, XDisplace, YDisplace, ZDisplace, UDisplace> where
    Source: NoiseFn<[f64; 2]>,
    XDisplace: NoiseFn<[f64; 2]>,
    YDisplace: NoiseFn<[f64; 2]>, 
[src]

impl<Source, XDisplace, YDisplace, ZDisplace, UDisplace> NoiseFn<[f64; 3]> for Displace<Source, XDisplace, YDisplace, ZDisplace, UDisplace> where
    Source: NoiseFn<[f64; 3]>,
    XDisplace: NoiseFn<[f64; 3]>,
    YDisplace: NoiseFn<[f64; 3]>,
    ZDisplace: NoiseFn<[f64; 3]>, 
[src]

impl<Source, XDisplace, YDisplace, ZDisplace, UDisplace> NoiseFn<[f64; 4]> for Displace<Source, XDisplace, YDisplace, ZDisplace, UDisplace> where
    Source: NoiseFn<[f64; 4]>,
    UDisplace: NoiseFn<[f64; 4]>,
    XDisplace: NoiseFn<[f64; 4]>,
    YDisplace: NoiseFn<[f64; 4]>,
    ZDisplace: NoiseFn<[f64; 4]>, 
[src]

impl<T> NoiseFn<T> for Constant where
    T: Copy
[src]

Loading content...