Function glissade::keyframes

source ·
pub fn keyframes<T: Mix + Clone + PartialEq, X: Time>(
    start_value: T,
) -> NoneKeyframes<T, X>
Expand description

Start Animation constructing with this function. It receives the initial value.

  • value - The value to start at.

See Keyframes trait methods for more options of adding next frames and building an animation.

§Examples

use std::time::Instant;
use glissade::{keyframes, Keyframes};
use web_time::Duration;

let transition = keyframes::<f64, Instant>(5.0)
    .stay(Duration::from_secs(1))
    .go_to(9.0, Duration::from_secs(4))
    .repeat_n(2.0);

assert_eq!(transition.get(Duration::from_secs(0)), 5.0);
assert_eq!(transition.get(Duration::from_secs(1)), 5.0);
assert_eq!(transition.get(Duration::from_secs(2)), 6.0);
assert_eq!(transition.get(Duration::from_secs(3)), 7.0);
assert_eq!(transition.get(Duration::from_secs(4)), 8.0);
assert_eq!(transition.get(Duration::from_millis(4500)), 8.5);
assert_eq!(transition.get(Duration::from_secs(6)), 5.0);
assert_eq!(transition.get(Duration::from_secs(74)), 9.0);