Skip to main content

simple_easing/
sine.rs

1use ::std::f32::consts::PI;
2
3/// <https://easings.net/#easeInSine>
4#[inline]
5#[must_use]
6pub fn sine_in(t: f32) -> f32 {
7	1.0 - (t * PI / 2.0).cos()
8}
9
10/// <https://easings.net/#easeOutSine>
11#[inline]
12#[must_use]
13pub fn sine_out(t: f32) -> f32 {
14	(t * PI / 2.0).sin()
15}
16
17/// <https://easings.net/#easeInOutSine>
18#[inline]
19#[must_use]
20pub fn sine_in_out(t: f32) -> f32 {
21	-((PI * t).cos() - 1.0) / 2.0
22}