Skip to main content

MaterialSpringEasing

Struct MaterialSpringEasing 

Source
pub struct MaterialSpringEasing { /* private fields */ }
Expand description

Bridges a physical spring to FerroUI’s normalized-progress IEasing interface.

Use the matching duration; the same spring with an unrelated duration changes its physical speed. This adapter starts with zero velocity because IEasing has no velocity channel. Controls needing interruption continuity use MaterialSpringState instead.

Implementations§

Source§

impl MaterialSpringEasing

Source

pub fn new( spec: MaterialSpringSpec, duration: TimeSpan, reduced_motion: bool, ) -> Self

Source

pub fn spring_spec(&self) -> MaterialSpringSpec

Parameters consumed by the velocity-preserving Material property transitions.

Trait Implementations§

Source§

impl Clone for MaterialSpringEasing

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MaterialSpringEasing

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl IEasing for MaterialSpringEasing

Source§

fn ease(&self, progress: f64) -> f64

Returns the transformed value for a linear progress.
Source§

fn to_shared(&self) -> Arc<SharedEasing> ⓘ

The easing as the render thread evaluates it: a key frame animation of the compositor runs there. An easing without parameters returns itself; one with parameters returns a copy with the parameters it has now.
Source§

fn derives_from_easing(&self) -> bool

Whether the object is an easing class: upstream, a class deriving from the Easing base class, which code tests for with a cast. True for every easing of this module and by default, because implementing this trait is how an easing class is written here; an object that stands for a bare implementation of the contract (not an easing class) answers false.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> ClassDefaults for T
where T: ?Sized,

Source§

fn static_constructor()

The static constructor of a type: work done once per thread, after the properties of the type are registered and before its first instance exists (class handlers, affects_render, metadata overrides). Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.