Type Definition nalgebra::core::MatrixN
[−]
[src]
type MatrixN<N, D> = MatrixMN<N, D, D>;
A staticaly sized column-major square matrix with D
rows and columns.
Methods
impl<N, D: Dim> MatrixN<N, D> where
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
pub fn from_diagonal<SB: Storage<N, D>>(diag: &Vector<N, D, SB>) -> Self where
N: Zero,
[src]
N: Zero,
Creates a square matrix with its diagonal set to diag
and all other entries set to 0.
impl<N, D: DimName> MatrixN<N, D> where
N: Scalar + Field,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Field,
DefaultAllocator: Allocator<N, D, D>,
pub fn new_scaling(scaling: N) -> Self
[src]
Creates a new homogeneous matrix that applies the same scaling factor on each dimension.
pub fn new_nonuniform_scaling<SB>(
scaling: &Vector<N, DimNameDiff<D, U1>, SB>
) -> Self where
D: DimNameSub<U1>,
SB: Storage<N, DimNameDiff<D, U1>>,
[src]
scaling: &Vector<N, DimNameDiff<D, U1>, SB>
) -> Self where
D: DimNameSub<U1>,
SB: Storage<N, DimNameDiff<D, U1>>,
Creates a new homogeneous matrix that applies a distinct scaling factor for each dimension.
pub fn new_translation<SB>(
translation: &Vector<N, DimNameDiff<D, U1>, SB>
) -> Self where
D: DimNameSub<U1>,
SB: Storage<N, DimNameDiff<D, U1>>,
[src]
translation: &Vector<N, DimNameDiff<D, U1>, SB>
) -> Self where
D: DimNameSub<U1>,
SB: Storage<N, DimNameDiff<D, U1>>,
Creates a new homogeneous matrix that applies a pure translation.
Trait Implementations
impl<N, D: DimName> Product for MatrixN<N, D> where
N: Scalar + Zero + One + ClosedMul + ClosedAdd,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedMul + ClosedAdd,
DefaultAllocator: Allocator<N, D, D>,
fn product<I: Iterator<Item = MatrixN<N, D>>>(iter: I) -> MatrixN<N, D>
[src]
Method which takes an iterator and generates Self
from the elements by multiplying the items. Read more
impl<'a, N, D: DimName> Product<&'a MatrixN<N, D>> for MatrixN<N, D> where
N: Scalar + Zero + One + ClosedMul + ClosedAdd,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedMul + ClosedAdd,
DefaultAllocator: Allocator<N, D, D>,
fn product<I: Iterator<Item = &'a MatrixN<N, D>>>(iter: I) -> MatrixN<N, D>
[src]
Method which takes an iterator and generates Self
from the elements by multiplying the items. Read more
impl<N, D: DimName> One for MatrixN<N, D> where
N: Scalar + Zero + One + ClosedMul + ClosedAdd,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedMul + ClosedAdd,
DefaultAllocator: Allocator<N, D, D>,
impl<N, D: DimName> Identity<Multiplicative> for MatrixN<N, D> where
N: Scalar + Zero + One,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One,
DefaultAllocator: Allocator<N, D, D>,
impl<N, D: DimName> AbstractMagma<Multiplicative> for MatrixN<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D>,
fn operate(&self, other: &Self) -> Self
[src]
Performs an operation.
fn op(&self, O, lhs: &Self) -> Self
[src]
Performs specific operation.
impl<N, D: DimName> AbstractSemigroup<Multiplicative> for MatrixN<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + AbstractSemigroup<Multiplicative>,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul + AbstractSemigroup<Multiplicative>,
DefaultAllocator: Allocator<N, D, D>,
fn prop_is_associative_approx(args: (Self, Self, Self)) -> bool where
Self: ApproxEq,
[src]
Self: ApproxEq,
Returns true
if associativity holds for the given arguments. Approximate equality is used for verifications. Read more
fn prop_is_associative(args: (Self, Self, Self)) -> bool where
Self: Eq,
[src]
Self: Eq,
Returns true
if associativity holds for the given arguments.
impl<N, D: DimName> AbstractMonoid<Multiplicative> for MatrixN<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + AbstractMonoid<Multiplicative> + One,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul + AbstractMonoid<Multiplicative> + One,
DefaultAllocator: Allocator<N, D, D>,
fn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> bool where
Self: ApproxEq,
[src]
Self: ApproxEq,
Checks whether operating with the identity element is a no-op for the given argument. Approximate equality is used for verifications. Read more
fn prop_operating_identity_element_is_noop(args: (Self,)) -> bool where
Self: Eq,
[src]
Self: Eq,
Checks whether operating with the identity element is a no-op for the given argument. Read more
impl<N: Real, D: DimNameSub<U1>> Transformation<Point<N, DimNameDiff<D, U1>>> for MatrixN<N, D> where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameDiff<D, U1>> + Allocator<N, DimNameDiff<D, U1>, DimNameDiff<D, U1>>,
[src]
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameDiff<D, U1>> + Allocator<N, DimNameDiff<D, U1>, DimNameDiff<D, U1>>,
fn transform_vector(
&self,
v: &VectorN<N, DimNameDiff<D, U1>>
) -> VectorN<N, DimNameDiff<D, U1>>
[src]
&self,
v: &VectorN<N, DimNameDiff<D, U1>>
) -> VectorN<N, DimNameDiff<D, U1>>
Applies this group's action on a vector from the euclidean space. Read more
fn transform_point(
&self,
pt: &Point<N, DimNameDiff<D, U1>>
) -> Point<N, DimNameDiff<D, U1>>
[src]
&self,
pt: &Point<N, DimNameDiff<D, U1>>
) -> Point<N, DimNameDiff<D, U1>>
Applies this group's action on a point from the euclidean space.
impl<N1, N2, D> SubsetOf<MatrixN<N2, DimNameSum<D, U1>>> for Rotation<N1, D> where
N1: Real,
N2: Real + SupersetOf<N1>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D, D> + Allocator<N2, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D>,
[src]
N1: Real,
N2: Real + SupersetOf<N1>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D, D> + Allocator<N2, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D>,
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
[src]
The inclusion map: converts self
to the equivalent element of its superset.
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
[src]
Checks if element
is actually part of the subset Self
(and can be converted to it).
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
[src]
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D> SubsetOf<MatrixN<N2, DimNameSum<D, U1>>> for Translation<N1, D> where
N1: Real,
N2: Real + SupersetOf<N1>,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
[src]
N1: Real,
N2: Real + SupersetOf<N1>,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
[src]
The inclusion map: converts self
to the equivalent element of its superset.
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
[src]
Checks if element
is actually part of the subset Self
(and can be converted to it).
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
[src]
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R> SubsetOf<MatrixN<N2, DimNameSum<D, U1>>> for Isometry<N1, D, R> where
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
[src]
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
[src]
The inclusion map: converts self
to the equivalent element of its superset.
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
[src]
Checks if element
is actually part of the subset Self
(and can be converted to it).
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
[src]
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R> SubsetOf<MatrixN<N2, DimNameSum<D, U1>>> for Similarity<N1, D, R> where
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, D, D> + Allocator<N2, D>,
[src]
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, D, D> + Allocator<N2, D>,
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
[src]
The inclusion map: converts self
to the equivalent element of its superset.
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
[src]
Checks if element
is actually part of the subset Self
(and can be converted to it).
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
[src]
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D: DimName, C> SubsetOf<MatrixN<N2, DimNameSum<D, U1>>> for Transform<N1, D, C> where
N1: Real + SubsetOf<N2>,
N2: Real,
C: TCategory,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
N1::Epsilon: Copy,
N2::Epsilon: Copy,
[src]
N1: Real + SubsetOf<N2>,
N2: Real,
C: TCategory,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
N1::Epsilon: Copy,
N2::Epsilon: Copy,
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
[src]
The inclusion map: converts self
to the equivalent element of its superset.
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
[src]
Checks if element
is actually part of the subset Self
(and can be converted to it).
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
[src]
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more