Skip to main content

Timing

Struct Timing 

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

Timing state for an animation track or timeline step.

§Example

use aura_anim_iced::timing::{
    Delay, Direction, Easing, FillMode, Timing, TimingSampleState,
};

let timing = Timing::new(200.0)
    .with_delay(Delay::from_millis(50.0))
    .with_direction(Direction::Alternate)
    .with_fill_mode(FillMode::Both)
    .with_easing(Easing::EaseOut)
    .with_iterations(2);

let before = timing.normalize_elapsed(25.0);
let active = timing.normalize_elapsed(100.0);

assert_eq!(before.sample_state, TimingSampleState::BackwardsFill);
assert!(active.has_sample());

Implementations§

Source§

impl Timing

Source

pub fn new(duration_ms: f64) -> Self

Creates a timing value with a duration in milliseconds.

Source

pub const fn duration(&self) -> Duration

Returns the duration of the timing.

Source

pub const fn delay(&self) -> Delay

Returns the delay of the timing.

Source

pub const fn direction(&self) -> Direction

Returns the direction of the timing.

Source

pub const fn fill_mode(&self) -> FillMode

Returns the fill mode of the timing.

Source

pub const fn easing(&self) -> Easing

Returns the easing curve of the timing.

Source

pub const fn iterations(&self) -> IterationCount

Returns the number of iterations of the timing.

Source

pub const fn playback_rate(&self) -> f64

Returns the playback rate of the timing.

Source

pub const fn with_delay(self, delay: Delay) -> Self

Sets the start delay.

Source

pub const fn with_direction(self, direction: Direction) -> Self

Sets the playback direction.

Source

pub const fn with_fill_mode(self, fill_mode: FillMode) -> Self

Sets the fill mode.

Source

pub const fn with_easing(self, easing: Easing) -> Self

Sets the easing curve.

Source

pub fn with_iterations(self, iterations: impl Into<IterationCount>) -> Self

Sets the iteration count.

Source

pub fn with_playback_rate(self, playback_rate: f64) -> Self

Sets the playback rate.

Source

pub fn active_duration(self) -> Option<Duration>

Returns the total active duration when the timing has a finite length.

Source

pub fn total_duration(self) -> Option<Duration>

Returns the total duration including delay when finite.

Source

pub fn normalize_elapsed(self, elapsed_ms: f64) -> NormalizedTiming

Normalizes elapsed milliseconds into active timing coordinates.

Trait Implementations§

Source§

impl Clone for Timing

Source§

fn clone(&self) -> Timing

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 Timing

Source§

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

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

impl Default for Timing

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for Timing

Source§

fn eq(&self, other: &Timing) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Timing

Source§

impl StructuralPartialEq for Timing

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<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> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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<State, Message> IntoBoot<State, Message> for State

Source§

fn into_boot(self) -> (State, Task<Message>)

Turns some type into the initial state of some Application.
Source§

impl<T> NoneValue for T
where T: Default,

Source§

type NoneType = T

Source§

fn null_value() -> T

The none-equivalent value.
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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> MaybeClone for T

Source§

impl<T> MaybeDebug for T

Source§

impl<T> MaybeSend for T
where T: Send,

Source§

impl<T> MaybeSync for T
where T: Sync,

Source§

impl<T> WasmNotSend for T
where T: Send,

Source§

impl<T> WasmNotSendSync for T

Source§

impl<T> WasmNotSync for T
where T: Sync,