Struct envelope::EasePoint [] [src]

pub struct EasePoint<X, Y> where X: NumCast + Clone + Copy, Y: Spatial + Clone + Copy, Y::Scalar: Float + Ease {
    pub x: X,
    pub y: Y,
    pub maybe_ease_fn: Option<EaseFunction>,
}

A type whose interpolation may involve some sort of easing.

Fields

x: X y: Y maybe_ease_fn: Option<EaseFunction>

Methods

impl<X, Y> EasePoint<X, Y> where X: NumCast + Clone + Copy, Y: Spatial + Clone + Copy, Y::Scalar: Float + Ease
[src]

fn new(x: X, y: Y, maybe_ease_fn: Option<EaseFunction>) -> EasePoint<X, Y>

Constructor for an EasePoint.

Trait Implementations

impl<X: Copy, Y: Copy> Copy for EasePoint<X, Y> where X: NumCast + Clone + Copy, Y: Spatial + Clone + Copy, Y::Scalar: Float + Ease
[src]

impl<X: Clone, Y: Clone> Clone for EasePoint<X, Y> where X: NumCast + Clone + Copy, Y: Spatial + Clone + Copy, Y::Scalar: Float + Ease
[src]

fn clone(&self) -> EasePoint<X, Y>

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more

impl<X, Y> Point<X, Y> for EasePoint<X, Y> where X: NumCast + Clone + Copy, Y: Spatial + Clone + Copy, Y::Scalar: Float + Ease
[src]

fn x_to_scalar(x: X) -> Y::Scalar

Convert X to Y's Scalar.

fn x(&self) -> X

X (often associated with time).

fn y(&self) -> Y

Y (often associated with some value).

fn interpolate(x: X, start: &Self, end: &Self) -> Y where Y: PartialEq, X: PartialEq

Interpolate between two points and return y for the given x.