Trait lnkit::prelude::geometry::AbstractRotation[][src]

pub trait AbstractRotation<T, const D: usize>: PartialEq<Self> + ClosedMul<Self> + Clone where
    T: Scalar
{ pub fn identity() -> Self;
pub fn inverse(&self) -> Self;
pub fn inverse_mut(&mut self);
pub fn transform_vector(
        &self,
        v: &Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
    ) -> Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>;
pub fn transform_point(&self, p: &Point<T, D>) -> Point<T, D>;
pub fn inverse_transform_vector(
        &self,
        v: &Matrix<T, Const<D>, Const<1_usize>, <DefaultAllocator as Allocator<T, Const<D>, Const<1_usize>>>::Buffer>
    ) -> Matrix<T, Const<D>, Const<1_usize>, <DefaultAllocator as Allocator<T, Const<D>, Const<1_usize>>>::Buffer>;
pub fn inverse_transform_point(&self, p: &Point<T, D>) -> Point<T, D>; pub fn inverse_transform_unit_vector(
        &self,
        v: &Unit<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>
    ) -> Unit<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> { ... } }

Trait implemented by rotations that can be used inside of an Isometry or Similarity.

Required methods

pub fn identity() -> Self[src]

The rotation identity.

pub fn inverse(&self) -> Self[src]

The rotation inverse.

pub fn inverse_mut(&mut self)[src]

Change self to its inverse.

pub fn transform_vector(
    &self,
    v: &Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
[src]

Apply the rotation to the given vector.

pub fn transform_point(&self, p: &Point<T, D>) -> Point<T, D>[src]

Apply the rotation to the given point.

pub fn inverse_transform_vector(
    &self,
    v: &Matrix<T, Const<D>, Const<1_usize>, <DefaultAllocator as Allocator<T, Const<D>, Const<1_usize>>>::Buffer>
) -> Matrix<T, Const<D>, Const<1_usize>, <DefaultAllocator as Allocator<T, Const<D>, Const<1_usize>>>::Buffer>
[src]

Apply the inverse rotation to the given vector.

pub fn inverse_transform_point(&self, p: &Point<T, D>) -> Point<T, D>[src]

Apply the inverse rotation to the given point.

Loading content...

Provided methods

pub fn inverse_transform_unit_vector(
    &self,
    v: &Unit<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>
) -> Unit<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>
[src]

Apply the inverse rotation to the given unit vector.

Loading content...

Implementors

impl<T> AbstractRotation<T, 2_usize> for Unit<Complex<T>> where
    T: SimdRealField,
    <T as SimdValue>::Element: SimdRealField
[src]

impl<T> AbstractRotation<T, 3_usize> for Unit<Quaternion<T>> where
    T: SimdRealField,
    <T as SimdValue>::Element: SimdRealField
[src]

impl<T, const D: usize> AbstractRotation<T, D> for Rotation<T, D> where
    T: SimdRealField,
    <T as SimdValue>::Element: SimdRealField
[src]

Loading content...