pub struct DefaultAnimatorF64Quadratic { /* private fields */ }
Implementations§
Source§impl DefaultAnimatorF64Quadratic
impl DefaultAnimatorF64Quadratic
Sourcepub fn new(value: f64, speed: f64) -> Self
pub fn new(value: f64, speed: f64) -> Self
Examples found in repository?
examples/default_animator_f64_quadratic.rs (line 7)
5fn main() {
6 // start at 0.5 with a speed factor of 2.
7 let mut animator = DefaultAnimatorF64Quadratic::new(0.5, 2.0);
8 // smoothly transition from 0.5 to 2
9 animator.set_target(2.0, Instant::now());
10 loop {
11 // repeatedly get the animator's current value and print it
12 let val = animator.get_value(Instant::now());
13 let count = (50.0 * val) as _;
14 eprintln!(
15 "val: {val:.2} | {}{} |",
16 "=".repeat(count),
17 " ".repeat(100 - count)
18 );
19 // once we reach 1, go to 0 instead. this simulates a user interrupting our animation.
20 if val > 1.0 {
21 animator.set_target(0.0, Instant::now());
22 }
23 // once we reach 0, exit
24 if val == 0.0 {
25 break;
26 }
27 std::thread::sleep(Duration::from_millis(50));
28 }
29}
pub fn target(&self) -> f64
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DefaultAnimatorF64Quadratic
impl RefUnwindSafe for DefaultAnimatorF64Quadratic
impl Send for DefaultAnimatorF64Quadratic
impl Sync for DefaultAnimatorF64Quadratic
impl Unpin for DefaultAnimatorF64Quadratic
impl UnwindSafe for DefaultAnimatorF64Quadratic
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