[][src]Struct noise_fn::Octaves

pub struct Octaves<Inner, const N: usize> { /* fields omitted */ }

A noise function formed by summing several octaves of another noise function.

lacunarity: A multiplier for the frequency from one octave to the next.

persistence: A multiplier for the persistence from one octave to the next.

A good default is Octaves::new(_, 0.5, 0.5).

Implementations

impl<Inner: Copy, const N: usize> Octaves<Inner, N>[src]

pub fn new(inner: Inner, lacunarity: f64, persistence: f64) -> Octaves<Inner, N>[src]

Trait Implementations

impl<Inner: Clone, const N: usize> Clone for Octaves<Inner, N>[src]

impl<Inner: Copy, const N: usize> Copy for Octaves<Inner, N>[src]

impl<Inner: Noise, const N: usize> Noise for Octaves<Inner, N> where
    Inner::Value: Mul<f64>,
    <Inner::Value as Mul<f64>>::Output: Zero + AddAssign
[src]

type Value = <SumNoise<ScaleNoise<Inner, f64, f64>, N> as Noise>::Value

type Unseeded = Octaves<Inner::Unseeded, N>

impl<Arg: Copy, Inner: Noise, const N: usize> NoiseDomain<Arg> for Octaves<Inner, N> where
    Arg: Mul<f64>,
    Inner: NoiseDomain<Arg::Output>,
    Inner::Value: Mul<f64>,
    <Inner::Value as Mul<f64>>::Output: Zero + AddAssign
[src]

impl<Inner: Seedable, const N: usize> Seedable for Octaves<Inner, N> where
    Inner::Seed: SplitSeed
[src]

type Seed = <SumNoise<ScaleNoise<Inner, f64, f64>, N> as Seedable>::Seed

type Seeded = Octaves<Inner::Seeded, N>

impl<Inner: Seeded, const N: usize> Seeded for Octaves<Inner, N> where
    <Inner::Config as Seedable>::Seed: SplitSeed
[src]

type Config = Octaves<Inner::Config, N>

Auto Trait Implementations

impl<Inner, const N: usize> RefUnwindSafe for Octaves<Inner, N> where
    Inner: RefUnwindSafe

impl<Inner, const N: usize> Send for Octaves<Inner, N> where
    Inner: Send

impl<Inner, const N: usize> Sync for Octaves<Inner, N> where
    Inner: Sync

impl<Inner, const N: usize> Unpin for Octaves<Inner, N> where
    Inner: Unpin

impl<Inner, const N: usize> UnwindSafe for Octaves<Inner, N> where
    Inner: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<TNoise> Noise for TNoise where
    TNoise: SeedOnlyNoise
[src]

type Value = <TNoise as SeedOnlyNoise>::Value

type Unseeded = EmptyConfig<TNoise>

impl<Noise> Seeded for Noise where
    Noise: SeedOnlyNoise
[src]

type Config = EmptyConfig<Noise>

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,