[src]

Struct nalgebra::na::Mat3

pub struct Mat3<N> {
    m11: N,
    m21: N,
    m31: N,
    m12: N,
    m22: N,
    m32: N,
    m13: N,
    m23: N,
    m33: N,
}

Square matrix of dimension 3.

Fields

m11
m21
m31
m12
m22
m32
m13
m23
m33

Methods

impl<N> Mat3<N>

fn new(m11: N, m12: N, m13: N, m21: N, m22: N, m23: N, m31: N, m32: N, m33: N) -> Mat3<N>

impl<N: Clone> Mat3<N>

unsafe fn at_fast(&self, (tuple arg NYI): (uint, uint)) -> N

unsafe fn set_fast(&mut self, (tuple arg NYI): (uint, uint), val: N)

Trait Implementations

impl<N: Eq> Eq for Mat3<N>

Automatically derived.

fn eq(&self, __arg_0: &Mat3<N>) -> bool

fn ne(&self, __arg_0: &Mat3<N>) -> bool

impl<__E: Encoder, N: Encodable<__E>> Encodable<__E> for Mat3<N>

Automatically derived.

fn encode(&self, __arg_0: &mut __E)

impl<__D: Decoder, N: Decodable<__D>> Decodable<__D> for Mat3<N>

Automatically derived.

fn decode(__arg_0: &mut __D) -> Mat3<N>

impl<N: Clone> Clone for Mat3<N>

Automatically derived.

fn clone(&self) -> Mat3<N>

impl<N: DeepClone> DeepClone for Mat3<N>

Automatically derived.

fn deep_clone(&self) -> Mat3<N>

impl<N: IterBytes> IterBytes for Mat3<N>

Automatically derived.

fn iter_bytes(&self, __arg_0: bool, __arg_1: Cb) -> bool

impl<N: Rand> Rand for Mat3<N>

Automatically derived.

fn rand<R: Rng>(__arg_0: &mut R) -> Mat3<N>

impl<N: Zero> Zero for Mat3<N>

Automatically derived.

fn zero() -> Mat3<N>

fn is_zero(&self) -> bool

impl<N: ToStr> ToStr for Mat3<N>

Automatically derived.

fn to_str(&self) -> ~str

impl<N, Rhs: Mat3MulRhs<N, Res>, Res> Mul<Rhs, Res> for Mat3<N>

fn mul(&self, other: &Rhs) -> Res

impl<N, Rhs: Mat3DivRhs<N, Res>, Res> Div<Rhs, Res> for Mat3<N>

fn div(&self, other: &Rhs) -> Res

impl<N, Rhs: Mat3AddRhs<N, Res>, Res> Add<Rhs, Res> for Mat3<N>

fn add(&self, other: &Rhs) -> Res

impl<N, Rhs: Mat3SubRhs<N, Res>, Res> Sub<Rhs, Res> for Mat3<N>

fn sub(&self, other: &Rhs) -> Res

impl<T: Mat3Cast<N>, N> Cast<T> for Mat3<N>

fn from(t: T) -> Mat3<N>

Converts an element of type T to an element of type Self.

impl<Nin: Clone, Nout: Clone + Cast<Nin>> Mat3Cast<Nout> for Mat3<Nin>

fn to(v: Mat3<Nin>) -> Mat3<Nout>

impl<N: Clone + Add<N, N>> Mat3AddRhs<N, Mat3<N>> for Mat3<N>

fn binop(left: &Mat3<N>, right: &Mat3<N>) -> Mat3<N>

impl<N: Clone + Sub<N, N>> Mat3SubRhs<N, Mat3<N>> for Mat3<N>

fn binop(left: &Mat3<N>, right: &Mat3<N>) -> Mat3<N>

impl<N: Signed> Absolute<Mat3<N>> for Mat3<N>

fn abs(m: &Mat3<N>) -> Mat3<N>

Computes some absolute value of this object. Typically, this will make all component of a matrix or vector positive.

impl<N: Clone + One + Zero> One for Mat3<N>

fn one() -> Mat3<N>

impl<N> Iterable<N> for Mat3<N>

fn iter<'l>(&'l self) -> Items<'l, N>

Gets a vector-like read-only iterator.

impl<N> IterableMut<N> for Mat3<N>

fn mut_iter<'l>(&'l mut self) -> MutItems<'l, N>

Gets a vector-like read-write iterator.

impl<N> Dim for Mat3<N>

fn dim(_: Option<Mat3<N>>) -> uint

The dimension of the object.

impl<N: Clone> Indexable<(uint, uint), N> for Mat3<N>

fn at(&self, (tuple arg NYI): (uint, uint)) -> N

Reads the i-th element of self.

fn set(&mut self, (tuple arg NYI): (uint, uint), val: N)

Writes to the i-th element of self.

fn swap(&mut self, (tuple arg NYI): (uint, uint), (tuple arg NYI): (uint, uint))

Swaps the i-th element of self with its j-th element.

unsafe fn unsafe_at(&self, (tuple arg NYI): (uint, uint)) -> N

Reads the i-th element of self.

i is not checked.

unsafe fn unsafe_set(&mut self, (tuple arg NYI): (uint, uint), val: N)

Writes to the i-th element of self.

i is not checked.

impl<N: Clone> Transpose for Mat3<N>

fn transpose_cpy(m: &Mat3<N>) -> Mat3<N>

Computes the transpose of a matrix.

fn transpose(&mut self)

In-place version of transposed.

impl<N: ApproxEq<N>> ApproxEq<N> for Mat3<N>

fn approx_epsilon(_: Option<Mat3<N>>) -> N

Default epsilon for approximation.

fn approx_eq(a: &Mat3<N>, b: &Mat3<N>) -> bool

Tests approximate equality.

fn approx_eq_eps(a: &Mat3<N>, b: &Mat3<N>, epsilon: &N) -> bool

Tests approximate equality using a custom epsilon.

impl<N: One + Zero + Clone> ToHomogeneous<Mat4<N>> for Mat3<N>

fn to_homogeneous(m: &Mat3<N>) -> Mat4<N>

Gets the homogeneous coordinates form of this object.

impl<N: One + Zero + Clone> FromHomogeneous<Mat4<N>> for Mat3<N>

fn from(m: &Mat4<N>) -> Mat3<N>

Builds an object from its homogeneous coordinate form.

Note that this this is not required that from is the inverse of to_homogeneous. Typically, from will remove some informations unrecoverable by to_homogeneous.