Developer Documentation
Centre for Vision, Speech & Signal Processing
USER IN NAMESPACE AMMA TREE ROOT AMMA SEARCH AMMA HOME
 

  PUBLIC
Matrix4d4C::Matrix4d4C(void)
Matrix4d4C::Matrix4d4C(const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT,const RealT)
Matrix4d4C::Matrix4d4C(const Vector4dC &,const Vector4dC &,const Vector4dC &,const Vector4dC &,const InputDataT)
Matrix4d4C::Matrix4d4C(const Point4dC &,const Point4dC &,const Point4dC &,const Point4dC &,const InputDataT)
Matrix4d4C::Matrix4d4C(BooleanT)
Matrix4d4C::Matrix4d4C(const Matrix4d4C &)
Matrix4d4C::Matrix4d4C(const MatrixC &)
Matrix4d4C::Matrix4d4C(istream &)
Matrix4d4C::operator=(const Matrix4d4C &)
Matrix4d4C::RDim(void) const
Matrix4d4C::CDim(void) const
Matrix4d4C::Matrix(void) const
Matrix4d4C::Matrix(void)
Matrix4d4C::operator[](IndexT) const
Matrix4d4C::operator[](IndexT)
Matrix4d4C::operator()(IndexT,IndexT) const
Matrix4d4C::operator()(IndexT,IndexT)
Matrix4d4C::A00(void) const
Matrix4d4C::A01(void) const
Matrix4d4C::A02(void) const
Matrix4d4C::A03(void) const
Matrix4d4C::A10(void) const
Matrix4d4C::A11(void) const
Matrix4d4C::A12(void) const
Matrix4d4C::A13(void) const
Matrix4d4C::A20(void) const
Matrix4d4C::A21(void) const
Matrix4d4C::A22(void) const
Matrix4d4C::A23(void) const
Matrix4d4C::A30(void) const
Matrix4d4C::A31(void) const
Matrix4d4C::A32(void) const
Matrix4d4C::A33(void) const
Matrix4d4C::A00(void)
Matrix4d4C::A01(void)
Matrix4d4C::A02(void)
Matrix4d4C::A03(void)
Matrix4d4C::A10(void)
Matrix4d4C::A11(void)
Matrix4d4C::A12(void)
Matrix4d4C::A13(void)
Matrix4d4C::A20(void)
Matrix4d4C::A21(void)
Matrix4d4C::A22(void)
Matrix4d4C::A23(void)
Matrix4d4C::A30(void)
Matrix4d4C::A31(void)
Matrix4d4C::A32(void)
Matrix4d4C::A33(void)
Matrix4d4C::Column(IndexT) const
Matrix4d4C::Row(IndexT) const
Matrix4d4C::Diagonal(void) const
Matrix4d4C::Set(const Matrix4d4C &)
Matrix4d4C::SetZero(void)
Matrix4d4C::SetRow(IndexT,const Point4dC &)
Matrix4d4C::SetColumn(IndexT,const Point4dC &)
Matrix4d4C::operator==(const Matrix4d4C &) const
Matrix4d4C::operator+=(const Matrix4d4C &)
Matrix4d4C::operator-=(const Matrix4d4C &)
Matrix4d4C::operator*=(RealT)
Matrix4d4C::operator/=(RealT)
Matrix4d4C::operator+(const Matrix4d4C &) const
Matrix4d4C::operator-(const Matrix4d4C &) const
Matrix4d4C::operator*(RealT) const
Matrix4d4C::AddToDiagonal(RealT)
Matrix4d4C::SubtractFromDiagonal(RealT)
Matrix4d4C::T(void) const
Matrix4d4C::I(void) const
Matrix4d4C::Det(void) const
Matrix4d4C::operator*(const Point4dC &) const
Matrix4d4C::operator*(const Vector4dC &) const
Matrix4d4C::operator*(const Matrix4d4C &) const
Matrix4d4C::LinearSolver(const Point4dC &) const
Matrix4d4C::ProductT(const Vector4dC &)
Matrix4d4C::ErrOutOfRange(IndexT,const char *) const
Matrix4d4C::AdjointDet(RealT,RealT,RealT,RealT,RealT,RealT,RealT,RealT,RealT)
Matrix4d4C
 
Matrix 4 x 4
 
include "amma/Matrix4d.hh"
User Level:Default
Library:Mag4
Example:exMat2d.cc
Section:Geometry.4-D Basic Types.Numerical.Specialised
In Scope:std

Comments:
The class Matrix4d4C represents a matrix 4x4 of real numbers. The indexes start from 0.

Derived Classes: Enumerated types:
enum InputDataT { ROWS, COLUMNS } ;
The kind of input data.

enum anon_enum?17 { dim = 4 } ;
the dimension of matrix

Variables:
RealT a[][];
The matrix elements.

Methods:
Matrix4d4C()
Creates the zero matrix.

Matrix4d4C(const RealT b00,const RealT b01,const RealT b02,const RealT b03,const RealT b10,const RealT b11,const RealT b12,const RealT b13,const RealT b20,const RealT b21,const RealT b22,const RealT b23,const RealT b30,const RealT b31,const RealT b32,const RealT b33)
Creates a new matrix and assign the values b[ij].

Matrix4d4C(const Vector4dC & v0,const Vector4dC & v1,const Vector4dC & v2,const Vector4dC & v3,const InputDataT dType = ROWS)
Creates a new matrix and assign the values according to the vectors. If 'dType' is equal to ROWS, the vectors are treated as rows of the matrix. If 'dType' is equal to COLUMNS, the vector are treated as columns of the matrix.

Matrix4d4C(const Point4dC & p0,const Point4dC & p1,const Point4dC & p2,const Point4dC & p3,const InputDataT dType = ROWS)
Creates a new matrix and assign the values according to the points coordinates. If 'dType' is equal to ROWS, the points are treated as rows of the matrix. If 'dType' is equal to COLUMNS, the points are treated as columns of the matrix.

Matrix4d4C(BooleanT)
Creates a unit matrix.

Matrix4d4C(const Matrix4d4C & mat)
Copy constructor.

Matrix4d4C(const MatrixC & mat)
Copy constructor from the N-dimensional matrix.

Matrix4d4C(istream & inS)
Creates a matrix form the input stream.

const Matrix4d4C & operator=(const Matrix4d4C & mat)
Assigment. Access to the matrix and its elements. --------------------------------------

IndexT RDim() const
Returns the number of rows.

IndexT CDim() const
Returns the number of columns.

const Matrix4d4C & Matrix() const
Access to the constant matrix.

Matrix4d4C & Matrix()
Access to the matrix.

const RealT * operator[](IndexT i) const
Returns the pointer to the row 'i' of the constant object.

RealT * operator[](IndexT i)
Returns the pointer to the row 'i' of the object.

RealT operator()(IndexT i,IndexT j) const
Returns the value of the element a[ij].

RealT & operator()(IndexT i,IndexT j)
Access to the value of the element a[ij].

RealT A00() const
Returns the value of the element a[00].

RealT A01() const
Returns the value of the element a[01].

RealT A02() const
Returns the value of the element a[02].

RealT A03() const
Returns the value of the element a[03].

RealT A10() const
Returns the value of the element a[10].

RealT A11() const
Returns the value of the element a[11].

RealT A12() const
Returns the value of the element a[12].

RealT A13() const
Returns the value of the element a[13].

RealT A20() const
Returns the value of the element a[20].

RealT A21() const
Returns the value of the element a[21].

RealT A22() const
Returns the value of the element a[22].

RealT A23() const
Returns the value of the element a[22].

RealT A30() const
Returns the value of the element a[30].

RealT A31() const
Returns the value of the element a[31].

RealT A32() const
Returns the value of the element a[32].

RealT A33() const
Returns the value of the element a[32].

RealT & A00()
Access to the value of the element a[00].

RealT & A01()
Access to the value of the element a[01].

RealT & A02()
Access to the value of the element a[02].

RealT & A03()
Access to the value of the element a[03].

RealT & A10()
Access to the value of the element a[10].

RealT & A11()
Access to the value of the element a[11].

RealT & A12()
Access to the value of the element a[12].

RealT & A13()
Access to the value of the element a[13].

RealT & A20()
Access to the value of the element a[20].

RealT & A21()
Access to the value of the element a[21].

RealT & A22()
Access to the value of the element a[22].

RealT & A23()
Access to the value of the element a[23].

RealT & A30()
Access to the value of the element a[30].

RealT & A31()
Access to the value of the element a[31].

RealT & A32()
Access to the value of the element a[32].

RealT & A33()
Access to the value of the element a[33].

Vector4dC Column(IndexT i) const
Returns the column 'i'.

Vector4dC Row(IndexT i) const
Return the row 'i'.

Vector4dC Diagonal() const
Returns the vector of main diagonal item. Setting of matrix elements. ---------------------------

void Set(const Matrix4d4C & mat)
Sets all elements of the matrix according to the matrix 'mat'.

Matrix4d4C & SetZero()
Sets all elements to be 0.0.

Matrix4d4C & SetRow(IndexT i,const Point4dC & p)
Sets the elements of the row 'i' according to the elements of the point 'p'.

Matrix4d4C & SetColumn(IndexT i,const Point4dC & p)
Sets the elements of the column 'i' according to the elements of the point 'p'. Logical operators. ------------------

BooleanT operator==(const Matrix4d4C & mat) const
Returns TRUE if all elements of the matrix are equal to the elements of the matrix 'mat'. Arithmetical operations. ------------------------

const Matrix4d4C & operator+=(const Matrix4d4C & mat)
Adds the matrix 'mat' to this matrix.

const Matrix4d4C & operator-=(const Matrix4d4C & mat)
Subtracts the matrix 'mat' from this matrix.

const Matrix4d4C & operator*=(RealT lambda)
Multiplies all elements by the scalar 'lambda'.

const Matrix4d4C & operator/=(RealT lambda)
Divides all elements by the scalar 'lambda'.

Matrix4d4C operator+(const Matrix4d4C & mat) const
Sums both matrixes and returns the result.

Matrix4d4C operator-(const Matrix4d4C & mat) const
Subtracts the matrix 'mat' from this matrix and returns the result.

Matrix4d4C operator*(RealT lambda) const
Multiplies all elements of this matrix by the scalar 'lambda' and returns the result.

const Matrix4d4C & AddToDiagonal(RealT a)
The value 'a' is added to all diagonal elements.

const Matrix4d4C & SubtractFromDiagonal(RealT a)
The value 'a' is subtracted from all diagonal elements. Matrix operators. -----------------

Matrix4d4C T() const
Returns the matrix, which is the transposition of this matrix.

Matrix4d4C I() const
Returns the inversion of this matrix.

RealT Det() const
Returns the determinant of the matrix.

Point4dC operator*(const Point4dC & point) const
Multiplies this matrix by the point 'p'. The returned point is equal to (*this) * p.

Vector4dC operator*(const Vector4dC & vector) const
Multiplies the matrix by the vector 'v'. The returned vector is equal to (*this) * v.

Matrix4d4C operator*(const Matrix4d4C & mat) const
Multiplies this matrix by the matrix 'mat'. The result matrix is returned.

Point4dC LinearSolver(const Point4dC & rightSide) const
Returns the solution of 4 linear equations determined by the matrix and the right side vector 'rightSide'

Matrix4d4C ProductT(const Vector4dC & a)
Returns the matrix that is result of the tensor product a*a.T(). Error checking. ---------------

void ErrOutOfRange(IndexT i,const char * functionName) const
Triggers the error handling if the index 'i' is smaller than 0 or bigger than 3. The name of the calling function 'functionName' is passed to the error hangler.

RealT AdjointDet(RealT b00,RealT b01,RealT b02,RealT b10,RealT b11,RealT b12,RealT b20,RealT b21,RealT b22)
Computes the determinant of the matrix 3x3 created from b[ij] elements.


Programmer:Radek Marik, Documentation by CxxDoc: Tue Mar 20 10:49:27 2001