3 unstable releases

0.1.0 Oct 25, 2022
0.0.2 Mar 29, 2021
0.0.1 Dec 27, 2017

#1137 in Algorithms

Download history 48/week @ 2024-01-01 160/week @ 2024-01-08 89/week @ 2024-01-15 66/week @ 2024-01-22 31/week @ 2024-01-29 70/week @ 2024-02-05 54/week @ 2024-02-12 71/week @ 2024-02-19 90/week @ 2024-02-26 99/week @ 2024-03-04 81/week @ 2024-03-11 64/week @ 2024-03-18 130/week @ 2024-03-25 143/week @ 2024-04-01 166/week @ 2024-04-08 79/week @ 2024-04-15

529 downloads per month
Used in 9 crates (2 directly)

Apache-2.0

110KB
354 lines

trajectory

Build Status crates.io docs

Trajectory interpolator for Rust.

Code example

use trajectory::{CubicSpline, Trajectory};

let times = vec![0.0_f64, 1.0, 3.0, 4.0];
let points = vec![
    vec![0.0, -1.0],
    vec![2.0, -3.0],
    vec![3.0, 3.0],
    vec![1.0, 5.0],
];
let ip = CubicSpline::new(times, points).unwrap();
for i in 0..400 {
    let t = i as f64 * 0.01_f64;
    let p = ip.position(t).unwrap();
    let v = ip.velocity(t).unwrap();
    let a = ip.acceleration(t).unwrap();
}

Run example

It requires gnuplot.

cargo run --example plot

plot1 plot2

Dependencies