#include <iso_math_vector_field.h>
Collaboration diagram for iso::math::VectorField< Type >:
Public Member Functions | |
VectorField (const Vector< unsigned int > &pSize, unsigned int pVectorDim) | |
create vector field | |
VectorField (const VectorField< Type > &pVectorField) | |
create vector field | |
~VectorField () | |
destructor | |
const VectorField< Type > & | operator= (const VectorField< Type > &pVectorField) throw (MathException) |
copy operator | |
unsigned int | fieldDim () const |
return field dimension | |
unsigned int | vectorDim () const |
return vector dimension | |
const Vector< unsigned int > & | size () const |
return size of vector field | |
unsigned int | vectorCount () const |
return number of vectors | |
Vector< Type > ** | vectors () |
return vectors | |
const Vector< Type > ** | vectors () const |
return vectors | |
Vector< Type > | sum () const |
return sum of all vectors | |
void | subField (const Vector< unsigned int > &pIndex, VectorField< Type > &pSubField) throw (MathException) |
retrieve subfield | |
const Vector< Type > & | operator[] (unsigned int pIndex) const throw (MathException) |
return vector | |
const Vector< Type > & | get (unsigned int pIndex) const throw (MathException) |
return vector | |
const Vector< Type > & | get (const Vector< unsigned int > &pIndex) const throw (MathException) |
return vector | |
Vector< Type > | get (const Vector< real > &pIndex) const throw (MathException) |
return interpolated vector | |
void | get (const Vector< real > &pIndex, Vector< Type > &pResult) const throw (MathException) |
return interpolated vector | |
void | set (unsigned int pIndex, const Vector< Type > &pValue) throw (MathException) |
set vector | |
void | set (const Vector< unsigned int > &pIndex, const Vector< Type > &pValue) throw (MathException) |
set vector | |
void | set (const Vector< real > &pIndex, const Vector< Type > &pValue) throw (MathException) |
set vector (interpolated mode) | |
void | set (const Vector< unsigned int > &pStartIndex, const Vector< unsigned int > &pEndIndex, const Vector< Type > &pValue) throw (MathException) |
set vectors | |
void | set (const Vector< Type > &pValue) throw (MathException) |
set all vector values | |
void | add (unsigned int pIndex, const Vector< Type > &pValue) throw (MathException) |
add vector | |
void | add (const Vector< unsigned int > &pIndex, const Vector< Type > &pValue) throw (MathException) |
add vector | |
void | add (const Vector< real > &pIndex, const Vector< Type > &pValue) throw (MathException) |
add vector (interpolated mode) | |
void | add (const Vector< unsigned int > &pStartIndex, const Vector< unsigned int > &pEndIndex, const Vector< Type > &pValue) throw (MathException) |
add vector | |
void | add (const Vector< Type > &pValue) throw (MathException) |
add all vector values | |
const VectorField< Type > & | operator+= (const Vector< Type > &pVector) throw (MathException) |
vectorfield += vector | |
const VectorField< Type > & | operator-= (const Vector< Type > &pVector) throw (MathException) |
vectorfield -= vector | |
const VectorField< Type > & | operator *= (const Vector< Type > &pVector) throw (MathException) |
vectorfield *= vector | |
const VectorField< Type > & | operator/= (const Vector< Type > &pVector) throw (MathException) |
vectorfield /= vector | |
VectorField< Type > | operator+ (const Vector< Type > &pVector) const throw (MathException) |
vectorfield + vector | |
VectorField< Type > | operator- (const Vector< Type > &pVector) const throw (MathException) |
vectorfield - vector | |
VectorField< Type > | operator * (const Vector< Type > &pVector) const throw (MathException) |
vectorfield * vector | |
VectorField< Type > | operator/ (const Vector< Type > &pVector) const throw (MathException) |
vectorfield / vector | |
const VectorField< Type > & | operator+= (const VectorField< Type > &pVectorField) throw (MathException) |
vectorfield += vectorfield | |
const VectorField< Type > & | operator-= (const VectorField< Type > &pVectorField) throw (MathException) |
vectorfield -= vectorfield | |
virtual const VectorField< Type > & | operator *= (const VectorField< Type > &pVectorField) throw (MathException) |
vectorfield *= vectorfield | |
const VectorField< Type > & | operator/= (const VectorField< Type > &pVectorField) throw (MathException) |
vectorfield /= vectorfield | |
VectorField< Type > | operator+ (const VectorField< Type > &pVectorField) const throw (MathException) |
vectorfield + vectorfield | |
VectorField< Type > | operator- (const VectorField< Type > &pVectorField) const throw (MathException) |
vectorfield - vectorfield | |
VectorField< Type > | operator * (const VectorField< Type > &pVectorField) const throw (MathException) |
vectorfield * vectorfield | |
VectorField< Type > | operator/ (const VectorField< Type > &pVectorField) const throw (MathException) |
vectorfield / vectorfield | |
unsigned int | calcIndex (const Vector< unsigned int > &pIndex) const throw (MathException) |
calculate index | |
void | convolve (const VectorField< Type > &pKernel) throw (MathException) |
convolve vector field with supplied kernel | |
Protected Attributes | |
unsigned int | mVectorCount |
number of vectors | |
Vector< unsigned int > | mSize |
number of vectors in field | |
Vector< unsigned int > | mIndexOffset |
offsets for converting a relative index into an absolute index | |
Vector< Type > ** | mVectors |
vectors | |
unsigned int | mInterpolVectorCount |
Friends | |
std::ostream & | operator<< (std::ostream &os, const VectorField< Type > pVectorField) |
output textual vector field information |
field
Created by Daniel Bisig on 4/27/07.
VectorField::VectorField | ( | const Vector< unsigned int > & | pSize, | |
unsigned int | pVectorDim | |||
) |
create vector field
pSize | size of vector field (i.e. number of vectors) | |
pVectorDim | dimension of vectors |
VectorField::VectorField | ( | const VectorField< Type > & | pVectorField | ) |
create vector field
pVectorField | vector field |
VectorField::~VectorField | ( | ) |
destructor
const VectorField< Type > & VectorField::operator= | ( | const VectorField< Type > & | pVectorField | ) | throw (MathException) |
copy operator
pVectorField | vectorfield to copy |
MathException | if vector fields are incompatible |
unsigned int VectorField::fieldDim | ( | ) | const |
return field dimension
unsigned int VectorField::vectorDim | ( | ) | const |
return vector dimension
const Vector< unsigned int > & VectorField::size | ( | ) | const |
return size of vector field
unsigned int VectorField::vectorCount | ( | ) | const |
return number of vectors
Vector< Type > ** VectorField::vectors | ( | ) |
return vectors
const Vector< Type > ** VectorField::vectors | ( | ) | const |
return vectors
Vector< Type > VectorField::sum | ( | ) | const |
return sum of all vectors
void VectorField::subField | ( | const Vector< unsigned int > & | pIndex, | |
VectorField< Type > & | pSubField | |||
) | throw (MathException) |
retrieve subfield
pIndex | position of subfield (top left) | |
pSubField | subfield |
MathException | dimension mismatch or out of bounds error |
const Vector< Type > & VectorField::operator[] | ( | unsigned int | pIndex | ) | const throw (MathException) [inline] |
return vector
pIndex | scalar index |
MathException | if index is out of bounds |
const Vector< Type > & VectorField::get | ( | unsigned int | pIndex | ) | const throw (MathException) [inline] |
return vector
pIndex | scalar index |
MathException | fails if index is out of bounds |
const Vector< Type > & VectorField::get | ( | const Vector< unsigned int > & | pIndex | ) | const throw (MathException) |
return vector
pIndex | nD index |
MathException | if dimension mismatch or index is out of bounds |
Vector< Type > VectorField::get | ( | const Vector< real > & | pIndex | ) | const throw (MathException) |
return interpolated vector
pIndex | nD index |
MathException | if dimension mismatch or index is out of bounds |
void VectorField::get | ( | const Vector< real > & | pIndex, | |
Vector< Type > & | pResult | |||
) | const throw (MathException) |
return interpolated vector
pIndex | nD index | |
pResult | interpolated vector |
MathException | if dimension mismatch or index is out of bounds |
void VectorField::set | ( | unsigned int | pIndex, | |
const Vector< Type > & | pValue | |||
) | throw (MathException) |
set vector
pIndex | scalar index | |
pValue | vector value |
MathException | Vector dimension mismatch or out of bounds error |
void VectorField::set | ( | const Vector< unsigned int > & | pIndex, | |
const Vector< Type > & | pValue | |||
) | throw (MathException) |
set vector
pIndex | vector index | |
pValue | vector value |
MathException | vector dimension mismatch or field dimension mismatch or index out of bounds |
void VectorField::set | ( | const Vector< real > & | pIndex, | |
const Vector< Type > & | pValue | |||
) | throw (MathException) |
set vector (interpolated mode)
pIndex | vector index | |
pValue | vector value |
MathException | vector dimension mismatch or field dimension mismatch or index out of bounds |
void VectorField::set | ( | const Vector< unsigned int > & | pStartIndex, | |
const Vector< unsigned int > & | pEndIndex, | |||
const Vector< Type > & | pValue | |||
) | throw (MathException) |
set vectors
pStartIndex | start vector index | |
pEndIndex | end vector index | |
pValue | vector value |
MathException | vector dimension mismatch or field dimension mismatch or index out of bounds or start index larger than end index |
void VectorField::set | ( | const Vector< Type > & | pValue | ) | throw (MathException) |
set all vector values
pValue | vector value |
MathException | vector dimension mismatch |
void VectorField::add | ( | unsigned int | pIndex, | |
const Vector< Type > & | pValue | |||
) | throw (MathException) |
add vector
pIndex | scalar index | |
pValue | vector value |
MathException | Vector dimension mismatch or out of bounds error |
void VectorField::add | ( | const Vector< unsigned int > & | pIndex, | |
const Vector< Type > & | pValue | |||
) | throw (MathException) |
add vector
pIndex | vector index | |
pValue | vector value |
MathException | field dimension mismatch or index out of bounds or vector dimension mismatch |
void VectorField::add | ( | const Vector< real > & | pIndex, | |
const Vector< Type > & | pValue | |||
) | throw (MathException) |
add vector (interpolated mode)
pIndex | vector index | |
pValue | vector value |
MathException | vector dimension mismatch or field dimension mismatch or index out of bounds |
void VectorField::add | ( | const Vector< unsigned int > & | pStartIndex, | |
const Vector< unsigned int > & | pEndIndex, | |||
const Vector< Type > & | pValue | |||
) | throw (MathException) |
add vector
pStartIndex | start vector index | |
pEndIndex | end vector index | |
pValue | vector value |
MathException | vector dimension mismatch or field dimension mismatch or index out of bounds or start index larger than end index |
void VectorField::add | ( | const Vector< Type > & | pValue | ) | throw (MathException) |
add all vector values
pValue | vector value |
MathException | vector dimension mismatch |
const VectorField< Type > & VectorField::operator+= | ( | const Vector< Type > & | pVector | ) | throw (MathException) [inline] |
vectorfield += vector
pVector | vector |
MathException | vector dimension mismatch |
const VectorField< Type > & VectorField::operator-= | ( | const Vector< Type > & | pVector | ) | throw (MathException) [inline] |
vectorfield -= vector
pVector | vector |
MathException | vector dimension mismatch |
const VectorField< Type > & VectorField::operator *= | ( | const Vector< Type > & | pVector | ) | throw (MathException) [inline] |
vectorfield *= vector
pVector | vector |
MathException | vector dimension mismatch |
const VectorField< Type > & VectorField::operator/= | ( | const Vector< Type > & | pVector | ) | throw (MathException) [inline] |
vectorfield /= vector
pVector | vector |
MathException | vector dimension mismatch |
VectorField< Type > VectorField::operator+ | ( | const Vector< Type > & | pVector | ) | const throw (MathException) [inline] |
vectorfield + vector
pVector | vector |
MathException | vector dimension mismatch |
VectorField< Type > VectorField::operator- | ( | const Vector< Type > & | pVector | ) | const throw (MathException) [inline] |
vectorfield - vector
pVector | vector |
MathException | vector dimension mismatch |
VectorField< Type > VectorField::operator * | ( | const Vector< Type > & | pVector | ) | const throw (MathException) [inline] |
vectorfield * vector
pVector | vector |
MathException | vector dimension mismatch |
VectorField< Type > VectorField::operator/ | ( | const Vector< Type > & | pVector | ) | const throw (MathException) [inline] |
vectorfield / vector
pVector | vector |
MathException | vector dimension mismatch |
const VectorField< Type > & VectorField::operator+= | ( | const VectorField< Type > & | pVectorField | ) | throw (MathException) [inline] |
vectorfield += vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
const VectorField< Type > & VectorField::operator-= | ( | const VectorField< Type > & | pVectorField | ) | throw (MathException) [inline] |
vectorfield -= vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
const VectorField< Type > & VectorField::operator *= | ( | const VectorField< Type > & | pVectorField | ) | throw (MathException) [virtual] |
vectorfield *= vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
const VectorField< Type > & VectorField::operator/= | ( | const VectorField< Type > & | pVectorField | ) | throw (MathException) [inline] |
vectorfield /= vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
VectorField< Type > VectorField::operator+ | ( | const VectorField< Type > & | pVectorField | ) | const throw (MathException) [inline] |
vectorfield + vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
VectorField< Type > VectorField::operator- | ( | const VectorField< Type > & | pVectorField | ) | const throw (MathException) [inline] |
vectorfield - vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
VectorField< Type > VectorField::operator * | ( | const VectorField< Type > & | pVectorField | ) | const throw (MathException) [inline] |
vectorfield * vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
VectorField< Type > VectorField::operator/ | ( | const VectorField< Type > & | pVectorField | ) | const throw (MathException) [inline] |
vectorfield / vectorfield
pVectorField | vectorfield |
MathException | vector dimension or field dimension or field size mismatch |
unsigned int VectorField::calcIndex | ( | const Vector< unsigned int > & | pIndex | ) | const throw (MathException) [inline] |
calculate index
pIndex | nD index |
void VectorField::convolve | ( | const VectorField< Type > & | pKernel | ) | throw (MathException) |
convolve vector field with supplied kernel
pKernel | convolution kernel |
MathException | kernel vector dimension or kernel field dimension mismatch or kernel size error (size not odd) |
std::ostream& operator<< | ( | std::ostream & | os, | |
const VectorField< Type > | pVectorField | |||
) | [friend] |
output textual vector field information
os | output stream | |
pVectorField | vector field |
unsigned int iso::math::VectorField< Type >::mVectorCount [protected] |
number of vectors
Vector<unsigned int> iso::math::VectorField< Type >::mSize [protected] |
number of vectors in field
Vector<unsigned int> iso::math::VectorField< Type >::mIndexOffset [protected] |
offsets for converting a relative index into an absolute index
Vector<Type>** iso::math::VectorField< Type >::mVectors [protected] |
vectors
unsigned int iso::math::VectorField< Type >::mInterpolVectorCount [protected] |