Trait micromath::F32Ext[][src]

pub trait F32Ext: Sized {
Show methods fn abs(self) -> f32;
fn acos(self) -> f32;
fn asin(self) -> f32;
fn atan(self) -> f32;
fn atan_norm(self) -> f32;
fn atan2(self, other: f32) -> f32;
fn atan2_norm(self, other: f32) -> f32;
fn ceil(self) -> f32;
fn copysign(self, sign: f32) -> f32;
fn cos(self) -> f32;
fn div_euclid(self, other: f32) -> f32;
fn exp(self) -> f32;
fn floor(self) -> f32;
fn fract(self) -> f32;
fn hypot(self, other: f32) -> f32;
fn inv(self) -> f32;
fn invsqrt(self) -> f32;
fn ln(self) -> f32;
fn log(self, base: f32) -> f32;
fn log2(self) -> f32;
fn log10(self) -> f32;
fn powf(self, n: f32) -> f32;
fn powi(self, n: i32) -> f32;
fn rem_euclid(self, other: f32) -> f32;
fn round(self) -> f32;
fn sin(self) -> f32;
fn sqrt(self) -> f32;
fn tan(self) -> f32;
fn trunc(self) -> f32;
}

f32 extension providing various arithmetic approximations and polyfills for std functionality.

Required methods

fn abs(self) -> f32[src]

Compute absolute value with a constant-time, data-independent implementation.

fn acos(self) -> f32[src]

Approximates acos(x) in radians in the range [0, pi]

fn asin(self) -> f32[src]

Approximates asin(x) in radians in the range [-pi/2, pi/2].

fn atan(self) -> f32[src]

Approximates atan(x) in radians with a maximum error of 0.002.

fn atan_norm(self) -> f32[src]

Approximates atan(x) normalized to the [−1,1] range with a maximum error of 0.1620 degrees.

fn atan2(self, other: f32) -> f32[src]

Approximates the four quadrant arctangent atan2(x) in radians, with a maximum error of 0.002.

fn atan2_norm(self, other: f32) -> f32[src]

Approximates the four quadrant arctangent. Normalized to the [0,4) range with a maximum error of 0.1620 degrees.

fn ceil(self) -> f32[src]

Approximates floating point ceiling.

fn copysign(self, sign: f32) -> f32[src]

Copies the sign from one number to another and returns it.

fn cos(self) -> f32[src]

Approximates cosine in radians with a maximum error of 0.002.

fn div_euclid(self, other: f32) -> f32[src]

Calculates Euclidean division, the matching method for rem_euclid.

fn exp(self) -> f32[src]

Approximates e^x.

fn floor(self) -> f32[src]

Approximates floating point floor.

fn fract(self) -> f32[src]

Retrieve the fractional part of floating point with sign.

fn hypot(self, other: f32) -> f32[src]

Approximates the length of the hypotenuse of a right-angle triangle given legs of length x and y.

fn inv(self) -> f32[src]

Approximates 1/x with an average deviation of ~8%.

fn invsqrt(self) -> f32[src]

Approximates inverse square root with an average deviation of ~5%.

fn ln(self) -> f32[src]

Approximates ln(x).

fn log(self, base: f32) -> f32[src]

Approximates log with an arbitrary base.

fn log2(self) -> f32[src]

Approximates log2.

fn log10(self) -> f32[src]

Approximates log10.

fn powf(self, n: f32) -> f32[src]

Approximates self^n.

fn powi(self, n: i32) -> f32[src]

Approximates self^n where n is an i32

fn rem_euclid(self, other: f32) -> f32[src]

Calculates the least nonnegative remainder of self (mod other).

fn round(self) -> f32[src]

Round the number part of floating point with sign.

fn sin(self) -> f32[src]

Approximates sine in radians with a maximum error of 0.002.

fn sqrt(self) -> f32[src]

Approximates square root with an average deviation of ~5%.

fn tan(self) -> f32[src]

Approximates tan(x) in radians with a maximum error of 0.6.

fn trunc(self) -> f32[src]

Retrieve whole number part of floating point with sign.

Loading content...

Implementors

impl F32Ext for f32[src]

Loading content...