zng_layout::unit::euclid

Trait Trig

pub trait Trig {
    // Required methods
    fn sin(self) -> Self;
    fn cos(self) -> Self;
    fn tan(self) -> Self;
    fn fast_atan2(y: Self, x: Self) -> Self;
    fn degrees_to_radians(deg: Self) -> Self;
    fn radians_to_degrees(rad: Self) -> Self;
}
Expand description

Trait for basic trigonometry functions, so they can be used on generic numeric types

Required Methods§

fn sin(self) -> Self

fn cos(self) -> Self

fn tan(self) -> Self

fn fast_atan2(y: Self, x: Self) -> Self

fn degrees_to_radians(deg: Self) -> Self

fn radians_to_degrees(rad: Self) -> Self

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

§

impl Trig for f32

§

fn fast_atan2(y: f32, x: f32) -> f32

A slightly faster approximation of atan2.

Note that it does not deal with the case where both x and y are 0.

§

fn sin(self) -> f32

§

fn cos(self) -> f32

§

fn tan(self) -> f32

§

fn degrees_to_radians(deg: f32) -> f32

§

fn radians_to_degrees(rad: f32) -> f32

§

impl Trig for f64

§

fn fast_atan2(y: f64, x: f64) -> f64

A slightly faster approximation of atan2.

Note that it does not deal with the case where both x and y are 0.

§

fn sin(self) -> f64

§

fn cos(self) -> f64

§

fn tan(self) -> f64

§

fn degrees_to_radians(deg: f64) -> f64

§

fn radians_to_degrees(rad: f64) -> f64

Implementors§