Trait nalgebra::geometry::AbstractRotation[][src]

pub trait AbstractRotation<N: Scalar, D: DimName>: PartialEq + ClosedMul + Clone {
    fn identity() -> Self;
fn inverse(&self) -> Self;
fn inverse_mut(&mut self);
fn transform_vector(&self, v: &VectorN<N, D>) -> VectorN<N, D>
    where
        DefaultAllocator: Allocator<N, D>
;
fn transform_point(&self, p: &Point<N, D>) -> Point<N, D>
    where
        DefaultAllocator: Allocator<N, D>
;
fn inverse_transform_vector(&self, v: &VectorN<N, D>) -> VectorN<N, D>
    where
        DefaultAllocator: Allocator<N, D>
;
fn inverse_transform_point(&self, p: &Point<N, D>) -> Point<N, D>
    where
        DefaultAllocator: Allocator<N, D>
; fn inverse_transform_unit_vector(
        &self,
        v: &Unit<VectorN<N, D>>
    ) -> Unit<VectorN<N, D>>
    where
        DefaultAllocator: Allocator<N, D>
, { ... } }

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

Required methods

fn identity() -> Self[src]

The rotation identity.

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

The rotation inverse.

fn inverse_mut(&mut self)[src]

Change self to its inverse.

fn transform_vector(&self, v: &VectorN<N, D>) -> VectorN<N, D> where
    DefaultAllocator: Allocator<N, D>, 
[src]

Apply the rotation to the given vector.

fn transform_point(&self, p: &Point<N, D>) -> Point<N, D> where
    DefaultAllocator: Allocator<N, D>, 
[src]

Apply the rotation to the given point.

fn inverse_transform_vector(&self, v: &VectorN<N, D>) -> VectorN<N, D> where
    DefaultAllocator: Allocator<N, D>, 
[src]

Apply the inverse rotation to the given vector.

fn inverse_transform_point(&self, p: &Point<N, D>) -> Point<N, D> where
    DefaultAllocator: Allocator<N, D>, 
[src]

Apply the inverse rotation to the given point.

Loading content...

Provided methods

fn inverse_transform_unit_vector(
    &self,
    v: &Unit<VectorN<N, D>>
) -> Unit<VectorN<N, D>> where
    DefaultAllocator: Allocator<N, D>, 
[src]

Apply the inverse rotation to the given unit vector.

Loading content...

Implementors

impl<N: SimdRealField> AbstractRotation<N, U2> for UnitComplex<N> where
    N::Element: SimdRealField
[src]

impl<N: SimdRealField> AbstractRotation<N, U3> for UnitQuaternion<N> where
    N::Element: SimdRealField
[src]

impl<N: SimdRealField, D: DimName> AbstractRotation<N, D> for Rotation<N, D> where
    N::Element: SimdRealField,
    DefaultAllocator: Allocator<N, D, D>, 
[src]

Loading content...