Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Math - Geometry - 3D - VectorMatrix3dC
 

  PUBLIC
VectorMatrix3dC::VectorMatrix3dC(void)
VectorMatrix3dC::VectorMatrix3dC(const FVectorC<3> &,const FMatrixC<3,3> &)
FVectorMatrixC::Vector(void)
FVectorMatrixC::Matrix(void)
FVectorMatrixC::Vector(void) const
FVectorMatrixC::Matrix(void) const
FVectorMatrixC::Fill(RealT)
FVectorMatrixC::Sort(void)
FVectorC::FVectorC(const TFPointC &)
FVectorC::IsReal(void) const
FVectorC::Magnitude(void) const
FVectorC::EuclidDistance(const TFVectorC &) const
FVectorC::Unit(void) const
FVectorC::MakeUnit(void)
FMatrixC::IsReal(void) const
FMatrixC::Inverse(void) const
FMatrixC::InverseIP(void)
TFVectorC::Size(void) const
TFVectorC::Contains(UIntT) const
TFVectorC::operator [](UIntT)
TFVectorC::operator [](UIntT) const
TFVectorC::operator ==(const TFVectorC &) const
TFVectorC::operator !=(const TFVectorC &) const
TFVectorC::Fill(const DataT &)
TFVectorC::Abs(void) const
TFVectorC::operator +=(const TFVectorC &)
TFVectorC::operator -=(const TFVectorC &)
TFVectorC::operator *=(const TFVectorC &)
TFVectorC::operator /=(const TFVectorC &)
TFVectorC::operator +(const TFVectorC &) const
TFVectorC::operator -(const TFVectorC &) const
TFVectorC::operator *(const TFVectorC &) const
TFVectorC::operator /(const TFVectorC &) const
TFVectorC::operator -(void) const
TFVectorC::operator *=(const DataT &)
TFVectorC::operator /=(const DataT &)
TFVectorC::operator *(const DataT &) const
TFVectorC::operator /(const DataT &) const
TFVectorC::Dot(const TFVectorC &) const
TFVectorC::OuterProduct(const TFVectorC &,TFMatrixC &) const
TFVectorC::OuterProduct(TFMatrixC &) const
TFVectorC::Limit(const DataT &,const DataT &)
TFVectorC::MaxValueDistance(const TFVectorC &) const
TFVectorC::CityBlockDistance(const TFVectorC &) const
TFVectorC::SqrEuclidDistance(const TFVectorC &) const
TFVectorC::Sum(void) const
TFVectorC::SumSqr(void) const
TFVectorC::T(void) const
TFVectorC::operator >>(istream &,TFVectorC &)
TFVectorC::operator <<(ostream &,const TFVectorC &)
TFVectorC::operator >>(BinIStreamC &,TFVectorC &)
TFVectorC::operator <<(BinOStreamC &,const TFVectorC &)
TFMatrixC::Size1(void) const
TFMatrixC::Size2(void) const
TFMatrixC::Contains(const Index2dC &) const
TFMatrixC::operator [](const Index2dC &)
TFMatrixC::operator [](const Index2dC &) const
TFMatrixC::operator [](UIntT)
TFMatrixC::operator [](UIntT) const
TFMatrixC::Fill(const DataT &)
TFMatrixC::operator ==(const TFMatrixC &) const
TFMatrixC::operator !=(const TFMatrixC &) const
TFMatrixC::operator +(const TFMatrixC &) const
TFMatrixC::operator -(const TFMatrixC &) const
TFMatrixC::operator *(const DataT &) const
TFMatrixC::operator /(const DataT &) const
TFMatrixC::operator +=(const TFMatrixC &)
TFMatrixC::operator -=(const TFMatrixC &)
TFMatrixC::operator *=(const DataT &)
TFMatrixC::operator /=(const DataT &)
TFMatrixC::operator *(const TFVectorC &) const
TFMatrixC::operator *(const TFMatrixC &) const
TFMatrixC::TMul(const TFMatrixC &) const
TFMatrixC::MulT(const TFMatrixC &) const
TFMatrixC::TMul(const TFVectorC &) const
TFMatrixC::T(void) const
TFMatrixC::SumOfAbs(void) const
TFMatrixC::SumSqr(void) const
TFMatrixC::Limit(const DataT &,const DataT &)
TFMatrixC::I(void)
TFMatrixC::SetDiagonal(const TFVectorC &)
TFMatrixC::AddDiagonal(const TFVectorC &)

   VectorMatrix3dC   
 
3D Vector matrix.
 
include "Ravl/VectorMatrix3d.hh"
Created:13/04/2002 
Source file:Ravl/Math/LinearAlgebra/FixedSize/VectorMatrix3d.hh
User Level:Normal
Library:RavlMath
In Scope:RavlN

Parent Classes: Methods:
VectorMatrix3dC()
Default constructor.

VectorMatrix3dC(const FVectorC<3> & vec,const FMatrixC<3,3> & mat)
Construct from a vector and a matrix.

#include "Ravl/FVectorMatrix.hh"
FVectorC<3> & Vector()
Access to the vector.

FMatrixC<3,3> & Matrix()
Access to the matrix.

const FVectorC<3> & Vector() const
Access to the vector.

const FMatrixC<3,3> & Matrix() const
Access to the matrix.

void Fill(RealT value)
Fills both the vector and matrix with 'value'

void Sort()
Sort in place according to the vector value.
The first value will be the biggest one.

#include "Ravl/FVector.hh"
explicit FVectorC(const TFPointC<3> & oth)
Base constructor.

bool IsReal() const
Test if matrix only contains real values.
This will return false if either nan's (Not an number) or infinite values are found.

RealT Magnitude() const
Calculate the magintude of the vector.

RealT EuclidDistance(const TFVectorC<RealT,3> & i) const
Returns the magintude of the difference between the two vectors.

FVectorC<3> Unit() const
Create a unit vector with the same direction.

const FVectorC<3> & MakeUnit()
Make this a unit vector.
In place operation.

#include "Ravl/FMatrix.hh"
bool IsReal() const
Test if matrix only contains real values.
This will return false if either nan's (Not an number) or infinite values are found.

FMatrixC<3,3> Inverse() const
Calculate the inverse of this matrix.
NB. This will only work for square matrixes.

bool InverseIP()
Calculate the inverse of this matrix in place.
Returns true if matrix was non-singular (i.e. successful inversion). NB. This will only work for square matrixes.

#include "Ravl/TFVector.hh"
UIntT Size() const
Get size of array
Used by some templates.

bool Contains(UIntT i) const
Test if array contains index i·

RealT & operator [](UIntT ind)
Access item.

const RealT & operator [](UIntT ind) const
Access item.

bool operator ==(const TFVectorC<RealT,3> & ind) const
is equal

bool operator !=(const TFVectorC<RealT,3> & ind) const
is not equal

void Fill(const RealT & dat)
Fill array with value 'dat'.

TFVectorC<RealT,3> Abs() const
Get an vector with Abs(x) run on all it values.

const TFVectorC<RealT,3> & operator +=(const TFVectorC<RealT,3> & ind)
Add an array to this one, inplace.

const TFVectorC<RealT,3> & operator -=(const TFVectorC<RealT,3> & ind)
Returns this index multiplied by index 'ind' item by item.

const TFVectorC<RealT,3> & operator *=(const TFVectorC<RealT,3> & ind)
Multiplies this index by index 'ind' item by item.

const TFVectorC<RealT,3> & operator /=(const TFVectorC<RealT,3> & ind)
Divides this index by index 'ind' item by item.

TFVectorC<RealT,3> operator +(const TFVectorC<RealT,3> & ind) const
Adds this index and 'ind'.

TFVectorC<RealT,3> operator -(const TFVectorC<RealT,3> & ind) const
Subtracts index 'ind' from this index.

TFVectorC<RealT,3> operator *(const TFVectorC<RealT,3> & ind) const
Returns this object multiplied by index 'ind' item by item.

TFVectorC<RealT,3> operator /(const TFVectorC<RealT,3> & ind) const
Returns this object devided by index 'ind' item by item.

TFVectorC<RealT,3> operator -() const
Returns opposite elements (unary minus operator).

const TFVectorC<RealT,3> & operator *=(const RealT & alpha)
Multiplies this index by number 'alpha'.

const TFVectorC<RealT,3> & operator /=(const RealT & alpha)
Divides this index by number 'alpha'.

TFVectorC<RealT,3> operator *(const RealT & alpha) const
Returns this object mutliplied by alpha.

TFVectorC<RealT,3> operator /(const RealT & alpha) const
Returns this object devided by alpha.

RealT Dot(const TFVectorC<RealT,3> & oth) const
Calculate the dot product of this and 'oth' vector.

TFMatrixC<RealT,3,3> & OuterProduct(const TFVectorC<RealT,3> & av,TFMatrixC<RealT,3,3> & result) const
Calculate the outer product of this vector with av.
The output is assigned to 'result'. A reference to 'result' is returned.

The implementation is in "Ravl/FMatrix.hh", it must be included to use this function.


TFMatrixC<RealT,3,3> & OuterProduct(TFMatrixC<RealT,3,3> & result) const
Calculate the outer product of this vector with itsself.
The output is assigned to 'result'. A reference to 'result' is returned.

The implementation is in "Ravl/FMatrix.hh", it must be included to use this function.


bool Limit(const RealT & min,const RealT & max)
Limit all values in this vector to between min and max.
Returns true if all values in the vector are between the limits. Distance calculations ---------------------

RealT MaxValueDistance(const TFVectorC<RealT,3> & i) const
Returns the distance of two indexes in maximum value metric.

RealT CityBlockDistance(const TFVectorC<RealT,3> & i) const
Returns the distance of two indexes in absolute value metric.

RealT SqrEuclidDistance(const TFVectorC<RealT,3> & i) const
Returns the distance of two indexes in square Euclid metric.

RealT Sum() const
Calculate the sum of all the vector elements.

RealT SumSqr() const
Calculate the sum of the squares of all the vector elements.

const TFMatrixC<RealT,1,3> & T() const
Transpose vector.
The implementation for this can be found in "Ravl/TFMatrix.hh"

istream & operator >>(istream & in,TFVectorC<RealT,3> & dat)

ostream & operator <<(ostream & in,const TFVectorC<RealT,3> & dat)

BinIStreamC & operator >>(BinIStreamC & in,TFVectorC<RealT,3> & dat)

BinOStreamC & operator <<(BinOStreamC & in,const TFVectorC<RealT,3> & dat)

#include "Ravl/TFMatrix.hh"
SizeT Size1() const
Get size of matrix in the first dimention

SizeT Size2() const
Get size of matrix in the second dimention

bool Contains(const Index2dC & i) const
Test if array contains index i·

RealT & operator [](const Index2dC & ind)
Access item.

const RealT & operator [](const Index2dC & ind) const
Access item.

SizeBufferAccessC<RealT> operator [](UIntT ind)
Access item.

const SizeBufferAccessC<RealT> operator [](UIntT ind) const
Access item.

void Fill(const RealT & dat)
Fill array with value 'dat'.

bool operator ==(const TFMatrixC<RealT,3,3> & oth) const
Is exactly equal ?

bool operator !=(const TFMatrixC<RealT,3,3> & oth) const
Is not exactly equal ?

TFMatrixC<RealT,3,3> operator +(const TFMatrixC<RealT,3,3> & mat) const
Sum 2 matrixes.

TFMatrixC<RealT,3,3> operator -(const TFMatrixC<RealT,3,3> & mat) const
Subtract 2 matrixes.

TFMatrixC<RealT,3,3> operator *(const RealT & val) const
Multiply all elements of the matrix by a scaler 'val'.
put results in a new matrix

TFMatrixC<RealT,3,3> operator /(const RealT & val) const
Divide all elements of the matrix by a scaler 'val'.
put results in a new matrix

const TFMatrixC<RealT,3,3> & operator +=(const TFMatrixC<RealT,3,3> & mat)
Add another matrix to this one.

const TFMatrixC<RealT,3,3> & operator -=(const TFMatrixC<RealT,3,3> & mat)
Subtract another matrix from this one.

const TFMatrixC<RealT,3,3> & operator *=(const RealT & val)
Multiply all elements of this matrix by a scaler 'val'.

const TFMatrixC<RealT,3,3> & operator /=(const RealT & val)
Divide all elements of this matrix by a scaler 'val'.

TFVectorC<RealT,3> operator *(const TFVectorC<RealT,3> & mat) const
Multiply vector by the matrix.

TFMatrixC<RealT,3,MT> operator *(const TFMatrixC<RealT,3,MT> & mat) const
Mutiply two matrixes.

TFMatrixC<RealT,3,MT> TMul(const TFMatrixC<RealT,3,MT> & mat) const
Transpose this matrix and Multiply by 'mat'

TFMatrixC<RealT,3,NT> MulT(const TFMatrixC<RealT,NT,3> & mat) const
Mutiply this matrix by transpose of 'mat'

TFVectorC<RealT,3> TMul(const TFVectorC<RealT,3> & vec) const
Transpose this matrix and multiply by 'vec'

TFMatrixC<RealT,3,3> T() const
Matrix transpose.

RealT SumOfAbs() const
Return the sum of the absolute values of the matrix.

RealT SumSqr() const
Calculate the sum of the squares of all the elements in the matrix

bool Limit(const RealT & min,const RealT & max)
Limit all values in this matrix to between min and max.
Returns true if all values in the matrix are between the limits.

static TFMatrixC<RealT,3,3> I()
Create an identity matrix.

const TFMatrixC<RealT,3,3> & SetDiagonal(const TFVectorC<RealT,3> & d)
Set the diagonal of this matrix.

const TFMatrixC<RealT,3,3> & AddDiagonal(const TFVectorC<RealT,3> & d)
Add a vector to the diagonal of this matrix.


Maintainer:Charles Galambos, Created: 13/04/2002, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002