Public Types | Public Member Functions | Friends

GEO::MatrixN< rowCount > Struct Template Reference

Base type of all square matrices (row-based). More...

#include <GeoBases.h>

List of all members.

Public Types

typedef VectorN< rowCount > VectorType
 associated vector type
typedef VectorN< rowCount-1 > LesserVectorType
 associated vector type with one less dimension

Public Member Functions

nuint RowColCount () const
 The number of rows or columns in the matrix.
nuint ElementCount () const
 The number of elements in the matrix.
 MatrixN ()
 ctor
 MatrixN (const float *array)
 ctor
 MatrixN (float c)
 ctor
Proxy< MatrixN, float > operator[] (nuint ind)
 access using [] or [][]
Proxy< const MatrixN, const float > operator[] (nuint ind) const
 access using [] or [][]
float m (int row, int col) const
 alias to rowcol
float & m (int row, int col)
 alias to rowcol
VectorTypeRow (nuint r)
 access a row as a vector
const VectorTypeRow (nuint r) const
 access a row as a vector
const VectorType GetColumn (nuint col) const
 get a copy of a column as a vector
void SetColumn (nuint col, const LesserVectorType &vec)
 sets a column into the matrix from a vector
MatrixN operator* (const float &o) const
 sets a column into the matrix from a vector except the last row
MatrixN operator* (const int &o) const
 scale by a value
MatrixN operator/ (const float &o) const
 per-element divide
MatrixN operator/ (const int &o) const
 divide elements by a value
MatrixN operator+ (const MatrixN &o) const
 per-element add
MatrixN operator+ (const float &o) const
 add
MatrixN operator- (const MatrixN &o) const
 per-element subtract
MatrixN operator- (const float &o) const
 subtract
MatrixN operator- () const
 negation
void operator*= (const float &o)
 scale by a value
void operator/= (const float &o)
 divide elements by a value
void operator+= (const MatrixN &o)
 per-element add
void operator+= (const float &o)
 add
void operator-= (const MatrixN &o)
 per-element subtract
void operator-= (const float &o)
 subtract
MatrixN operator* (const MatrixN &o) const
 matrix multiplication
void operator*= (const MatrixN &o)
 matrix multiplication
VectorType operator* (const VectorType &v) const
 multiply a matrix with a vector
MatrixN Transpose () const
 get the transpose of the matrix
void SetTranspose ()
 transpose the matrix in place
void MakeIdentity ()
 turn the matrix into an identity matrix
LesserVectorType GetTranslation () const
 retrieve the translation portion of the matrix
void SetTranslation (const LesserVectorType &v)
 set the translation portion of the matrix
 operator const std::string () const
 human readable string representation

Friends

bool operator== (const MatrixN &m1, const MatrixN &m2)
 comparison
bool operator!= (const MatrixN &m1, const MatrixN &m2)
 comparison
MatrixN operator* (const float &o, const MatrixN &me)
 scale by a value

Detailed Description

template<nuint rowCount>
struct GEO::MatrixN< rowCount >

Base type of all square matrices (row-based).


Member Function Documentation

template<nuint rowCount>
MatrixN GEO::MatrixN< rowCount >::operator* ( const float &  o  )  const [inline]

sets a column into the matrix from a vector except the last row

scale by a value


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends