[][src]Struct noise_fn::ScaleNoise

pub struct ScaleNoise<Inner, InScale: Copy, OutScale: Copy> { /* fields omitted */ }

A noise function which scales both the input and output values.

noise(x) = inner.noise(x * scale_in) * scale_out

Implementations

impl<Inner, InScale: Copy, OutScale: Copy> ScaleNoise<Inner, InScale, OutScale>[src]

pub fn new(
    inner: Inner,
    scale_in: InScale,
    scale_out: OutScale
) -> ScaleNoise<Inner, InScale, OutScale>
[src]

Trait Implementations

impl<Inner: Clone, InScale: Clone + Copy, OutScale: Clone + Copy> Clone for ScaleNoise<Inner, InScale, OutScale>[src]

impl<Inner: Copy, InScale: Copy, OutScale: Copy> Copy for ScaleNoise<Inner, InScale, OutScale>[src]

impl<Inner: Noise, InScale: Copy, OutScale: Copy> Noise for ScaleNoise<Inner, InScale, OutScale> where
    Inner::Value: Mul<OutScale>, 
[src]

type Value = <Inner::Value as Mul<OutScale>>::Output

type Unseeded = ScaleNoise<Inner::Unseeded, InScale, OutScale>

impl<Arg, Inner, InScale: Copy, OutScale: Copy> NoiseDomain<Arg> for ScaleNoise<Inner, InScale, OutScale> where
    Arg: Mul<InScale>,
    Inner: NoiseDomain<Arg::Output>,
    Inner::Value: Mul<OutScale>, 
[src]

impl<Inner: Seedable, InScale: Copy, OutScale: Copy> Seedable for ScaleNoise<Inner, InScale, OutScale>[src]

type Seed = Inner::Seed

type Seeded = ScaleNoise<Inner::Seeded, InScale, OutScale>

impl<Inner: Seeded, InScale: Copy, OutScale: Copy> Seeded for ScaleNoise<Inner, InScale, OutScale>[src]

type Config = ScaleNoise<Inner::Config, InScale, OutScale>

Auto Trait Implementations

impl<Inner, InScale, OutScale> RefUnwindSafe for ScaleNoise<Inner, InScale, OutScale> where
    InScale: RefUnwindSafe,
    Inner: RefUnwindSafe,
    OutScale: RefUnwindSafe

impl<Inner, InScale, OutScale> Send for ScaleNoise<Inner, InScale, OutScale> where
    InScale: Send,
    Inner: Send,
    OutScale: Send

impl<Inner, InScale, OutScale> Sync for ScaleNoise<Inner, InScale, OutScale> where
    InScale: Sync,
    Inner: Sync,
    OutScale: Sync

impl<Inner, InScale, OutScale> Unpin for ScaleNoise<Inner, InScale, OutScale> where
    InScale: Unpin,
    Inner: Unpin,
    OutScale: Unpin

impl<Inner, InScale, OutScale> UnwindSafe for ScaleNoise<Inner, InScale, OutScale> where
    InScale: UnwindSafe,
    Inner: UnwindSafe,
    OutScale: 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>,