4 releases
Uses old Rust 2015
0.0.5 | May 7, 2017 |
---|---|
0.0.3 | Mar 12, 2017 |
0.0.2 | Jun 3, 2016 |
0.0.1 | Dec 16, 2014 |
#1276 in Algorithms
50 downloads per month
10KB
359 lines
easing
easing iterators for rust
Rust iterators are fantastic—why not use them for easing? Use like so:
use easing;
let begin: f64 = 0;
let end: f64 = 1000;
let steps: u64 = 10;
// In a for loop!
for x in easing::sin_in(begin, end, steps) {
println!("Woo, I'm at x={}!", x);
}
// Mapping!
fn move_to(x: f64) {
println!("Moving on up to {}", x);
}
easing::cubic_out(begin, end, steps).map(move_to);
// And other iterator stuff!
let xs: Vec<f64> = easing::exp_inout(begin, end, steps).collect(); // why would you do this
Available iterators are currently:
function | in | out | in and out |
---|---|---|---|
linear | linear |
linear |
linear |
quadratic | quad_in |
quad_out |
quad_inout |
cubic | cubic_in |
cubic_out |
cubic_inout |
quartic | quartic_in |
quartic_out |
quartic_inout |
sinusoidal | sin_in |
sin_out |
sin_inout |
exponential | exp_in |
exp_out |
exp_inout |
Easing functions taken from warrenm's AHEasing.
Find it on crates.io at https://crates.io/crates/easing.
Licesnsed under the LGPLv3.