Trait vecmat::transform::Transform [−][src]
General N-dimensional tansformation trait.
It’s assumed that transfomation is a group.
Required methods
fn identity() -> Self
[src]
Identity transformation.
fn inv(self) -> Self
[src]
Inverse transformation.
fn apply(&self, pos: Vector<T, N>) -> Vector<T, N>
[src]
Perform the transformation itself.
fn deriv(&self, pos: Vector<T, N>, dir: Vector<T, N>) -> Vector<T, N>
[src]
Find transformation directional derivative at specified point.
fn chain(self, other: Self) -> Self
[src]
Chain two transformations into a new one.
Implementors
impl<T> Transform<T, 2_usize> for Rotation2<T> where
T: Neg<Output = T> + Num + Copy,
[src]
T: Neg<Output = T> + Num + Copy,
fn identity() -> Self
[src]
fn inv(self) -> Self
[src]
fn apply(&self, pos: Vector<T, 2>) -> Vector<T, 2>
[src]
fn deriv(&self, _pos: Vector<T, 2>, dir: Vector<T, 2>) -> Vector<T, 2>
[src]
fn chain(self, other: Self) -> Self
[src]
impl<T> Transform<T, 3_usize> for Rotation3<T> where
T: Neg<Output = T> + Num + Copy,
[src]
T: Neg<Output = T> + Num + Copy,
fn identity() -> Self
[src]
fn inv(self) -> Self
[src]
fn apply(&self, pos: Vector<T, 3>) -> Vector<T, 3>
[src]
fn deriv(&self, _pos: Vector<T, 3>, dir: Vector<T, 3>) -> Vector<T, 3>
[src]
fn chain(self, other: Self) -> Self
[src]
impl<T, const N: usize> Transform<T, N> for Affine<T, N> where
T: Neg<Output = T> + Num + Copy,
[src]
T: Neg<Output = T> + Num + Copy,
fn identity() -> Self
[src]
fn inv(self) -> Self
[src]
fn apply(&self, pos: Vector<T, N>) -> Vector<T, N>
[src]
fn deriv(&self, _pos: Vector<T, N>, dir: Vector<T, N>) -> Vector<T, N>
[src]
fn chain(self, other: Self) -> Self
[src]
impl<T, const N: usize> Transform<T, N> for Linear<T, N> where
T: Neg<Output = T> + Num + Copy,
[src]
T: Neg<Output = T> + Num + Copy,
fn identity() -> Self
[src]
fn inv(self) -> Self
[src]
fn apply(&self, pos: Vector<T, N>) -> Vector<T, N>
[src]
fn deriv(&self, _pos: Vector<T, N>, dir: Vector<T, N>) -> Vector<T, N>
[src]
fn chain(self, other: Self) -> Self
[src]
impl<T, const N: usize> Transform<T, N> for Shift<T, N> where
T: Neg<Output = T> + Num + Copy,
[src]
T: Neg<Output = T> + Num + Copy,