pub struct Bezier {
ax: f64,
bx: f64,
cx: f64,
ay: f64,
by: f64,
cy: f64,
}
Expand description
A unit cubic Bézier curve, used for timing functions in CSS transitions and animations.
Fields§
§ax: f64
§bx: f64
§cx: f64
§ay: f64
§by: f64
§cy: f64
Implementations§
source§impl Bezier
impl Bezier
sourcepub fn calculate_bezier_output(
progress: f64,
epsilon: f64,
x1: f32,
y1: f32,
x2: f32,
y2: f32,
) -> f64
pub fn calculate_bezier_output( progress: f64, epsilon: f64, x1: f32, y1: f32, x2: f32, y2: f32, ) -> f64
Calculate the output of a unit cubic Bézier curve from the two middle control points.
X coordinate is time, Y coordinate is function advancement. The nominal range for both is 0 to 1.
The start and end points are always (0, 0) and (1, 1) so that a transition or animation starts at 0% and ends at 100%.
fn new(x1: CSSFloat, y1: CSSFloat, x2: CSSFloat, y2: CSSFloat) -> Bezier
fn sample_curve_x(&self, t: f64) -> f64
fn sample_curve_y(&self, t: f64) -> f64
fn sample_curve_derivative_x(&self, t: f64) -> f64
fn solve_curve_x(&self, x: f64, epsilon: f64) -> f64
Auto Trait Implementations§
impl Freeze for Bezier
impl RefUnwindSafe for Bezier
impl Send for Bezier
impl Sync for Bezier
impl Unpin for Bezier
impl UnwindSafe for Bezier
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
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert