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

  PUBLIC
Matrix3d3C::Matrix3d3C(void)
Matrix3d3C::Matrix3d3C(RealT,RealT,RealT,RealT,RealT,RealT,RealT,RealT,RealT)
Matrix3d3C::Matrix3d3C(const Vector3dC &,const Vector3dC &,const Vector3dC &,const InputDataT)
Matrix3d3C::Matrix3d3C(const Point3dC &,const Point3dC &,const Point3dC &,const InputDataT)
Matrix3d3C::Matrix3d3C(const Matrix3d3C &)
Matrix3d3C::Matrix3d3C(const MatrixC &)
Matrix3d3C::Matrix3d3C(istream &)
Matrix3d3C::operator=(const Matrix3d3C &)
Matrix3d3C::RDim(void) const
Matrix3d3C::CDim(void) const
Matrix3d3C::Matrix(void) const
Matrix3d3C::Matrix(void)
Matrix3d3C::operator[](IndexT) const
Matrix3d3C::operator[](IndexT)
Matrix3d3C::operator()(IndexT,IndexT) const
Matrix3d3C::operator()(IndexT,IndexT)
Matrix3d3C::A00(void) const
Matrix3d3C::A01(void) const
Matrix3d3C::A02(void) const
Matrix3d3C::A10(void) const
Matrix3d3C::A11(void) const
Matrix3d3C::A12(void) const
Matrix3d3C::A20(void) const
Matrix3d3C::A21(void) const
Matrix3d3C::A22(void) const
Matrix3d3C::A00(void)
Matrix3d3C::A01(void)
Matrix3d3C::A02(void)
Matrix3d3C::A10(void)
Matrix3d3C::A11(void)
Matrix3d3C::A12(void)
Matrix3d3C::A20(void)
Matrix3d3C::A21(void)
Matrix3d3C::A22(void)
Matrix3d3C::Column(IndexT) const
Matrix3d3C::Row(IndexT) const
Matrix3d3C::Diagonal(void) const
Matrix3d3C::Set(const Matrix3d3C &)
Matrix3d3C::SetZero(void)
Matrix3d3C::SetRow(IndexT,const Point3dC &)
Matrix3d3C::SetColumn(IndexT,const Point3dC &)
Matrix3d3C::SwapRows(const IndexT,const IndexT)
Matrix3d3C::SwapCols(const IndexT,const IndexT)
Matrix3d3C::operator==(const Matrix3d3C &) const
Matrix3d3C::operator+=(const Matrix3d3C &)
Matrix3d3C::operator-=(const Matrix3d3C &)
Matrix3d3C::operator*=(RealT)
Matrix3d3C::operator/=(RealT)
Matrix3d3C::operator+(const Matrix3d3C &) const
Matrix3d3C::operator-(const Matrix3d3C &) const
Matrix3d3C::operator*(RealT) const
Matrix3d3C::AddToDiagonal(RealT)
Matrix3d3C::SubtractFromDiagonal(RealT)
Matrix3d3C::T(void) const
Matrix3d3C::Trace(void) const
Matrix3d3C::EuclideanNorm(void) const
Matrix3d3C::I(void) const
Matrix3d3C::Det(void) const
Matrix3d3C::operator*(const Point3dC &) const
Matrix3d3C::operator*(const Vector3dC &) const
Matrix3d3C::operator*(const Matrix3d3C &) const
Matrix3d3C::LinearSolver(const Point3dC &) const
Matrix3d3C::ProductT(const Vector3dC &)
Matrix3d3C::ErrOutOfRange(IndexT,const char *) const
Matrix3d3C
 
Matrix 3 x 3
 
include "amma/Matrix3d.hh"
User Level:Default
Library:Mag3
Example:exMat2d.cc
Section:Geometry.3-D Basic Types.Numerical.Specialised
In Scope:std

Comments:
The class Matrix3d3C represents a matrix 3x3 of real numbers. The indexes start from 0.

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

Variables:
Methods:
Matrix3d3C()
Creates the zero matrix.

Matrix3d3C(RealT b00,RealT b01,RealT b02,RealT b10,RealT b11,RealT b12,RealT b20,RealT b21,RealT b22)
Creates a new matrix and assign the values b[ij].

Matrix3d3C(const Vector3dC & v0,const Vector3dC & v1,const Vector3dC & v2,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.

Matrix3d3C(const Point3dC & p0,const Point3dC & p1,const Point3dC & p2,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.

Matrix3d3C(const Matrix3d3C & mat)
Copy constructor.

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

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

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

SizeT RDim() const
Returns the number of rows.

SizeT CDim() const
Returns the number of columns.

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

Matrix3d3C & Matrix()
Access to the matrix.

const SizeBufferAccessC<RealT> operator[](IndexT r) const
Access to the row of the constant matrix.

SizeBufferAccessC<RealT> operator[](IndexT r)
Access to the row of the matrix.

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 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 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 & 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 & 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 & 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].

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

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

Vector3dC Diagonal() const
Returns the vector of main diagonal item. Setting of matrix elements. ===========================

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

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

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

Matrix3d3C & SetColumn(IndexT i,const Point3dC & p)
Sets the elements of the column 'i' according to the elements of the point 'p'.

Matrix3d3C & SwapRows(const IndexT r1,const IndexT r2)
Swaps the rows 'r1' and 'r2'.

Matrix3d3C & SwapCols(const IndexT c1,const IndexT c2)
Swaps the columns 'c1' and 'c2'. Logical operators. ==================

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

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

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

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

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

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

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

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

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

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

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

RealT Trace() const
Returns the trace of the matrix.

RealT EuclideanNorm() const
Returns the root of the summ of squares of the elements of the matrix.

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

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

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

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

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

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

Matrix3d3C ProductT(const Vector3dC & a)
Returns the matrix that is result of 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 2. The name of the calling function 'functionName' is passed to the error hangler.


Programmer:Radek Marik, Documentation by CxxDoc: Tue Mar 20 10:48:08 2001