Trait Map

Source
pub trait Map<P, D = P>: Clone {
    // Required methods
    fn identity() -> Self;
    fn apply_pos(&self, pos: P) -> P;
    fn apply_dir(&self, pos: P, dir: D) -> D;
    fn apply_normal(&self, pos: P, normal: D) -> D;
    fn chain(self, other: Self) -> Self;
    fn inv(self) -> Self;
}

Required Methods§

Source

fn identity() -> Self

Source

fn apply_pos(&self, pos: P) -> P

Source

fn apply_dir(&self, pos: P, dir: D) -> D

Source

fn apply_normal(&self, pos: P, normal: D) -> D

Source

fn chain(self, other: Self) -> Self

Source

fn inv(self) -> Self

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<A, T> Map<T> for A
where A: Directional<T> + Clone, T: Normalize,