pub struct Translate<const D: usize, G>where
G: Generator<D>,{ /* private fields */ }Expand description
A generator which translates input points before passing them to the underlying generator.
For details, see the documentation of translate(). Typically, this struct is not meant
to be used directly. Instead, translate() implemented by Generator, should be used
to create Translate.
Implementations§
Trait Implementations§
source§impl<const D: usize, G> Generator<D> for Translate<D, G>where
G: Generator<D>,
impl<const D: usize, G> Generator<D> for Translate<D, G>where G: Generator<D>,
source§fn sample(&self, point: [f64; D]) -> f64
fn sample(&self, point: [f64; D]) -> f64
Samples the generator at a given
point and returns the resulting value. Read moresource§fn scale(self, scale: [f64; D]) -> Scale<D, Self>
fn scale(self, scale: [f64; D]) -> Scale<D, Self>
Create a generator which scales input points before passing them to the underlying generator. Read more
source§fn translate(self, translation: [f64; D]) -> Translate<D, Self>
fn translate(self, translation: [f64; D]) -> Translate<D, Self>
Create a generator which translates input points before passing them to the underlying generator. Read more
source§fn neg(self) -> Neg<D, Self>
fn neg(self) -> Neg<D, Self>
Create a generator which negates the results of the underlying generator. Read more
source§fn abs(self) -> Abs<D, Self>
fn abs(self) -> Abs<D, Self>
Create a generator returning the absolute value of the results of the underlying generator. Read more
source§fn exp(self) -> Exp<D, Self>
fn exp(self) -> Exp<D, Self>
Create a generator applying the exponential function on results of the underlying generator. Read more
source§fn add(self, offset: f64) -> Add<D, Self>
fn add(self, offset: f64) -> Add<D, Self>
Create a generator adding
offset to results of the underlying generator. Read moresource§fn mul(self, scale: f64) -> Mul<D, Self>
fn mul(self, scale: f64) -> Mul<D, Self>
Create a generator multiplying
scale to results of the underlying generator. Read moresource§fn powi(self, exponent: i32) -> Pow<D, Self, i32>
fn powi(self, exponent: i32) -> Pow<D, Self, i32>
Create a generator raising results of the underlying generator to the power of
exponent. Read moresource§fn powf(self, exponent: f64) -> Pow<D, Self, f64>
fn powf(self, exponent: f64) -> Pow<D, Self, f64>
Create a generator raising results of the underlying generator to the power of
exponent. Read moresource§fn clamp(self, min: f64, max: f64) -> Clamp<D, Self>
fn clamp(self, min: f64, max: f64) -> Clamp<D, Self>
Create a generator clamping results of the underlying generator to a given interval. Read more
source§fn lambda<L>(self, lambda: L) -> Lambda<D, Self, L>where
L: Fn(f64) -> f64,
fn lambda<L>(self, lambda: L) -> Lambda<D, Self, L>where L: Fn(f64) -> f64,
Create a generator applying the supplied closure to results of the underlying generator. Read more
source§fn sum<G>(self, other: G) -> Sum<D, Self, G>where
G: Generator<D>,
fn sum<G>(self, other: G) -> Sum<D, Self, G>where G: Generator<D>,
Create a generator adding results of the underlying generator to results of a given other
generator. Read more
source§fn product<G>(self, other: G) -> Product<D, Self, G>where
G: Generator<D>,
fn product<G>(self, other: G) -> Product<D, Self, G>where G: Generator<D>,
Create a generator multiplying results of the underlying generator to results of a given other
generator. Read more
source§fn min<G>(self, other: G) -> Min<D, Self, G>where
G: Generator<D>,
fn min<G>(self, other: G) -> Min<D, Self, G>where G: Generator<D>,
Create a generator producing the minimum of results of the underlying generator and results of
a given other generator. Read more
source§fn max<G>(self, other: G) -> Max<D, Self, G>where
G: Generator<D>,
fn max<G>(self, other: G) -> Max<D, Self, G>where G: Generator<D>,
Create a generator producing the maximum of results of the underlying generator and results of
a given other generator. Read more
source§fn power<G>(self, other: G) -> Power<D, Self, G>where
G: Generator<D>,
fn power<G>(self, other: G) -> Power<D, Self, G>where G: Generator<D>,
Create a generator raising results of the underlying generator to the power of results of a
given other generator. Read more
source§fn fbm(
self,
octaves: u32,
frequency: f64,
lacunarity: f64,
persistence: f64
) -> Fbm<D, Self>
fn fbm( self, octaves: u32, frequency: f64, lacunarity: f64, persistence: f64 ) -> Fbm<D, Self>
Create a generator applying fractal brownian motion on the underlying generator. Read more
source§fn billow(
self,
octaves: u32,
frequency: f64,
lacunarity: f64,
persistence: f64
) -> Billow<D, Self>
fn billow( self, octaves: u32, frequency: f64, lacunarity: f64, persistence: f64 ) -> Billow<D, Self>
source§fn ridgedmulti(
self,
octaves: u32,
frequency: f64,
lacunarity: f64,
attenuation: f64
) -> RidgedMulti<D, Self>
fn ridgedmulti( self, octaves: u32, frequency: f64, lacunarity: f64, attenuation: f64 ) -> RidgedMulti<D, Self>
source§fn blend<G, GC>(self, other: G, control: GC) -> Blend<D, Self, G, GC>where
G: Generator<D>,
GC: Generator<D>,
fn blend<G, GC>(self, other: G, control: GC) -> Blend<D, Self, G, GC>where G: Generator<D>, GC: Generator<D>,
Create a generator blending the underlying generator with a given other generator based on the
value supplied by a control-generator. Read more
source§fn select<G, GC>(
self,
other: G,
control: GC,
selection_min: f64,
selection_max: f64
) -> Select<D, Self, G, GC>where
G: Generator<D>,
GC: Generator<D>,
fn select<G, GC>( self, other: G, control: GC, selection_min: f64, selection_max: f64 ) -> Select<D, Self, G, GC>where G: Generator<D>, GC: Generator<D>,
Create a generator selecting the result of either the underlying generator or that of a given
other generator based on whether the value supplied by a control-generator lies within the
provided interval. Read more
source§impl<G: Generator<1>> Generator1D for Translate<1, G>
impl<G: Generator<1>> Generator1D for Translate<1, G>
source§impl<G: Generator<2>> Generator2D for Translate<2, G>
impl<G: Generator<2>> Generator2D for Translate<2, G>
source§fn rotate(self, rotation: [f64; 1]) -> Rotate<2, 1, Self>
fn rotate(self, rotation: [f64; 1]) -> Rotate<2, 1, Self>
Create a generator which rotates input points before passing them to the underlying generator. Read more
source§impl<G: Generator<3>> Generator3D for Translate<3, G>
impl<G: Generator<3>> Generator3D for Translate<3, G>
source§fn rotate(self, rotation: [f64; 3]) -> Rotate<3, 3, Self>
fn rotate(self, rotation: [f64; 3]) -> Rotate<3, 3, Self>
Create a generator which rotates input points before passing them to the underlying generator. Read more
source§fn displace_x<GA>(self, displacement_generator: GA) -> Displace<3, 0, Self, GA>where
GA: Generator<3>,
fn displace_x<GA>(self, displacement_generator: GA) -> Displace<3, 0, Self, GA>where GA: Generator<3>,
Create a generator providing the results of the underlying generator after displacing the
x-coordinate by the result of the provided generator. Read more
source§impl<G: Generator<4>> Generator4D for Translate<4, G>
impl<G: Generator<4>> Generator4D for Translate<4, G>
source§fn rotate(self, rotation: [f64; 6]) -> Rotate<4, 6, Self>
fn rotate(self, rotation: [f64; 6]) -> Rotate<4, 6, Self>
Create a generator which rotates input points before passing them to the underlying generator.
source§fn displace_x<GA>(self, displacement_generator: GA) -> Displace<4, 0, Self, GA>where
GA: Generator<4>,
fn displace_x<GA>(self, displacement_generator: GA) -> Displace<4, 0, Self, GA>where GA: Generator<4>,
Create a generator providing the results of the underlying generator after displacing the
x-coordinate by the result of the provided generator. Read more
source§fn displace_y<GA>(self, displacement_generator: GA) -> Displace<4, 1, Self, GA>where
GA: Generator<4>,
fn displace_y<GA>(self, displacement_generator: GA) -> Displace<4, 1, Self, GA>where GA: Generator<4>,
Create a generator providing the results of the underlying generator after displacing the
y-coordinate by the result of the provided generator. Read more
impl<const D: usize, G> Copy for Translate<D, G>where G: Generator<D> + Copy,
Auto Trait Implementations§
impl<const D: usize, G> RefUnwindSafe for Translate<D, G>where G: RefUnwindSafe,
impl<const D: usize, G> Send for Translate<D, G>where G: Send,
impl<const D: usize, G> Sync for Translate<D, G>where G: Sync,
impl<const D: usize, G> Unpin for Translate<D, G>where G: Unpin,
impl<const D: usize, G> UnwindSafe for Translate<D, G>where G: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more