pub struct KeyframeTrack<T>where
T: Tweenable,{ /* private fields */ }Expand description
A track containing keyframes that can be sampled at any time.
§Type Parameters
T: The value type, must implementTweenable.
§Examples
use eazy_keyframes::{KeyframeTrack, Keyframe};
use eazy_core::Easing;
let track = KeyframeTrack::new()
.keyframe(0.0, 0.0_f32)
.keyframe_eased(0.5, 100.0, Easing::OutBounce)
.keyframe(1.0, 50.0);
let value = track.sample(0.25);Implementations§
Source§impl<T> KeyframeTrack<T>where
T: Tweenable,
impl<T> KeyframeTrack<T>where
T: Tweenable,
Sourcepub fn new() -> KeyframeTrack<T>
pub fn new() -> KeyframeTrack<T>
Create a new empty keyframe track.
Sourcepub fn with_default_easing(easing: Easing) -> KeyframeTrack<T>
pub fn with_default_easing(easing: Easing) -> KeyframeTrack<T>
Create a track with a specific default easing.
Sourcepub fn keyframe(self, time: f32, value: T) -> KeyframeTrack<T>
pub fn keyframe(self, time: f32, value: T) -> KeyframeTrack<T>
Add a keyframe (builder pattern).
Sourcepub fn keyframe_eased(
self,
time: f32,
value: T,
easing: Easing,
) -> KeyframeTrack<T>
pub fn keyframe_eased( self, time: f32, value: T, easing: Easing, ) -> KeyframeTrack<T>
Add a keyframe with easing (builder pattern).
Sourcepub fn start_time(&self) -> f32
pub fn start_time(&self) -> f32
Get the start time (time of first keyframe).
Sourcepub fn sample(&self, time: f32) -> T
pub fn sample(&self, time: f32) -> T
Sample the track at a given time.
Returns the interpolated value between keyframes. Times before the first keyframe return the first value. Times after the last keyframe return the last value.
Sourcepub fn sample_clamped(&self, time: f32) -> T
pub fn sample_clamped(&self, time: f32) -> T
Sample with clamping to track bounds.
Trait Implementations§
Source§impl<T> Clone for KeyframeTrack<T>
impl<T> Clone for KeyframeTrack<T>
Source§fn clone(&self) -> KeyframeTrack<T>
fn clone(&self) -> KeyframeTrack<T>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<T> Debug for KeyframeTrack<T>
impl<T> Debug for KeyframeTrack<T>
Source§impl<T> Default for KeyframeTrack<T>where
T: Tweenable,
impl<T> Default for KeyframeTrack<T>where
T: Tweenable,
Source§fn default() -> KeyframeTrack<T>
fn default() -> KeyframeTrack<T>
Returns the “default value” for a type. Read more
Source§impl<T> FromIterator<Keyframe<T>> for KeyframeTrack<T>where
T: Tweenable,
impl<T> FromIterator<Keyframe<T>> for KeyframeTrack<T>where
T: Tweenable,
Source§fn from_iter<I>(iter: I) -> KeyframeTrack<T>where
I: IntoIterator<Item = Keyframe<T>>,
fn from_iter<I>(iter: I) -> KeyframeTrack<T>where
I: IntoIterator<Item = Keyframe<T>>,
Creates a value from an iterator. Read more
Auto Trait Implementations§
impl<T> Freeze for KeyframeTrack<T>
impl<T> RefUnwindSafe for KeyframeTrack<T>where
T: RefUnwindSafe,
impl<T> Send for KeyframeTrack<T>
impl<T> Sync for KeyframeTrack<T>
impl<T> Unpin for KeyframeTrack<T>where
T: Unpin,
impl<T> UnwindSafe for KeyframeTrack<T>where
T: 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