Trait ultraviolet::interp::Slerp

source ·
pub trait Slerp<T> {
    // Required method
    fn slerp(&self, end: Self, t: T) -> Self;
}
Expand description

Spherical-linear interpolation.

Basically, interpolation that maintains a constant angular velocity from one orientation on a unit hypersphere to another. This is sorta the “high quality” interpolation for Rotors, and it can also be used to interpolate other things, one example being interpolation of 3d normal vectors.

Note that you should often normalize the result returned by this operation, when working with Rotors, etc!

Required Methods§

source

fn slerp(&self, end: Self, t: T) -> Self

Implementors§

source§

impl Slerp<f32> for Bivec2

source§

impl Slerp<f32> for Bivec3

source§

impl Slerp<f32> for Rotor2

source§

impl Slerp<f32> for Rotor3

source§

impl Slerp<f32> for Vec2

source§

impl Slerp<f32> for Vec3

source§

impl Slerp<f32> for Vec4

source§

impl Slerp<f64> for DBivec2

source§

impl Slerp<f64> for DBivec3

source§

impl Slerp<f64> for DRotor2

source§

impl Slerp<f64> for DRotor3

source§

impl Slerp<f64> for DVec2

source§

impl Slerp<f64> for DVec3

source§

impl Slerp<f64> for DVec4

source§

impl Slerp<f32x4> for Bivec2x4

source§

impl Slerp<f32x4> for Bivec3x4

source§

impl Slerp<f32x4> for Rotor2x4

source§

impl Slerp<f32x4> for Rotor3x4

source§

impl Slerp<f32x4> for Vec2x4

source§

impl Slerp<f32x4> for Vec3x4

source§

impl Slerp<f32x4> for Vec4x4

source§

impl Slerp<f32x8> for Bivec2x8

source§

impl Slerp<f32x8> for Bivec3x8

source§

impl Slerp<f32x8> for Rotor2x8

source§

impl Slerp<f32x8> for Rotor3x8

source§

impl Slerp<f32x8> for Vec2x8

source§

impl Slerp<f32x8> for Vec3x8

source§

impl Slerp<f32x8> for Vec4x8

source§

impl Slerp<f64x2> for DBivec2x2

source§

impl Slerp<f64x2> for DBivec3x2

source§

impl Slerp<f64x2> for DRotor2x2

source§

impl Slerp<f64x2> for DRotor3x2

source§

impl Slerp<f64x2> for DVec2x2

source§

impl Slerp<f64x2> for DVec3x2

source§

impl Slerp<f64x2> for DVec4x2

source§

impl Slerp<f64x4> for DBivec2x4

source§

impl Slerp<f64x4> for DBivec3x4

source§

impl Slerp<f64x4> for DRotor2x4

source§

impl Slerp<f64x4> for DRotor3x4

source§

impl Slerp<f64x4> for DVec2x4

source§

impl Slerp<f64x4> for DVec3x4

source§

impl Slerp<f64x4> for DVec4x4