QVVector Class Reference
[Math extensions]

Implementation of numerical vectors. More...

#include <qvmath/qvvector.h>

Inherited by QVQuaternion.

List of all members.

Public Member Functions

 QVVector ()
 Default constructor for QVVector.
 QVVector (const int size, const double defaultValue=0)
 Constructor for QVVector.
 QVVector (const QVVector &vector)
 Copy constructor for QVVector.
 QVVector (const QVector< double > &vector)
 Copy constructor for QVector.
 QVVector (const QVMatrix &matrix)
 Convert constructor from QVMatrix.
 QVVector (const gsl_vector *vector)
 Copy constructor for gsl_vector.
 QVVector (const QPoint &point)
 Convert constructor for QPoint.
 QVVector (const QPointF &point)
 Convert constructor for QPointF.
double operator * (const QVVector &vector) const
 Vector dot product.
QVVector operator^ (const QVVector &vector) const
 Vector cross product.
QVVector operator+ (const QVVector &vector) const
 Vector add.
QVVector operator- (const QVVector &vector) const
 Vector substraction.
QVVector operator * (const double value) const
 Scalar multiplication.
QVVector operator/ (const double value) const
 Scalar division.
QVVector operator * (const QVMatrix &matrix) const
 Vector-matrix product.
bool operator== (const QVVector &vector) const
 Compare operator.
QVVectoroperator+= (const QVVector &vector)
 Add compound assignment operator.
 operator QPointF () const
 Convert to QPointF operator.
 operator gsl_vector * () const
 Convert to gsl_vector * operator.
void set (const double value)
 Set vector elements to a value.
QVVector subVector (const int firstIndex, const int lastIndex)
 Set vector elements to a value.
QVVector scalarDivision (const double value) const
 Scalar division.
QVVector scalarMultiplication (const double value) const
 Scalar multiplication.
double norm2 () const
 Norm 2 of the vector.
QVVector normalize () const
 Normalize vector.
double dotProduct (const QVVector &vector) const
 Vector dot product.
QVVector crossProduct (const QVVector &vector) const
 Vector cross product.
QVVector add (const QVVector &vector) const
 Vector add.
QVVector substract (const QVVector &vector) const
 Vector substraction.
bool equals (const QVVector &vector) const
 Compare operator.

Static Public Member Functions

static const QVVector gaussianDistribution (const int size, const double sigma)
 Gaussian distributed values vector.


Detailed Description

Implementation of numerical vectors.

Definition at line 43 of file qvvector.h.


Constructor & Destructor Documentation

QVVector::QVVector (  )  [inline]

Default constructor for QVVector.

Parameters:
vector operand for the product

Definition at line 49 of file qvvector.h.

QVVector::QVVector ( const int  size,
const double  defaultValue = 0 
) [inline]

Constructor for QVVector.

Parameters:
int initializing size for the vector
defaultValue default value to set all elements of the vector

Definition at line 55 of file qvvector.h.

QVVector::QVVector ( const QVVector vector  )  [inline]

Copy constructor for QVVector.

Parameters:
vector vector to be copied

Definition at line 60 of file qvvector.h.

QVVector::QVVector ( const QVector< double > &  vector  )  [inline]

Copy constructor for QVector.

Parameters:
vector vector to be copied

Definition at line 65 of file qvvector.h.

QVVector::QVVector ( const QVMatrix matrix  ) 

Convert constructor from QVMatrix.

This function converts a QVMatrix object into a QVVector object. Given a matrix $ A_{m,n} $, this function generates a row vector of size mxn, containing each one of the rows of the original matrix.

Parameters:
matrix matrix to be converted.

Definition at line 29 of file qvvector.cpp.

QVVector::QVVector ( const gsl_vector *  vector  )  [inline]

Copy constructor for gsl_vector.

Parameters:
vector vector to be copied

Definition at line 79 of file qvvector.h.

QVVector::QVVector ( const QPoint &  point  )  [inline]

Convert constructor for QPoint.

Parameters:
vector vector to be copied

Definition at line 88 of file qvvector.h.

QVVector::QVVector ( const QPointF &  point  )  [inline]

Convert constructor for QPointF.

Parameters:
vector vector to be copied

Definition at line 93 of file qvvector.h.


Member Function Documentation

double QVVector::operator * ( const QVVector vector  )  const [inline]

Vector dot product.

Parameters:
vector operand for the product
See also:
dotProduct

Definition at line 101 of file qvvector.h.

QVVector QVVector::operator^ ( const QVVector vector  )  const [inline]

Vector cross product.

Parameters:
vector operand for the product
See also:
crossProduct

Definition at line 107 of file qvvector.h.

QVVector QVVector::operator+ ( const QVVector vector  )  const [inline]

Vector add.

Parameters:
vector term for the operation
See also:
add

Definition at line 113 of file qvvector.h.

QVVector QVVector::operator- ( const QVVector vector  )  const [inline]

Vector substraction.

Parameters:
vector subtrahend for the operation
See also:
substract

Definition at line 119 of file qvvector.h.

QVVector QVVector::operator * ( const double  value  )  const [inline]

Scalar multiplication.

Todo:
operator* para matrics. Devuelve un vector, resultado de multiplicar el vector actual por la matriz, por el lado izquierdo.
Parameters:
value value to multiply each component of the vector
See also:
operator*(const double)

Definition at line 126 of file qvvector.h.

QVVector QVVector::operator/ ( const double  value  )  const [inline]

Scalar division.

Parameters:
value value to divide each component of the vector
See also:
scalarDivide

Definition at line 132 of file qvvector.h.

Referenced by normalize().

QVVector QVVector::operator * ( const QVMatrix matrix  )  const

Vector-matrix product.

Parameters:
matrix operand for the product

Definition at line 66 of file qvvector.cpp.

bool QVVector::operator== ( const QVVector vector  )  const [inline]

Compare operator.

Parameters:
vector vector to compare
See also:
equals

Definition at line 143 of file qvvector.h.

QVVector& QVVector::operator+= ( const QVVector vector  )  [inline]

Add compound assignment operator.

Parameters:
vector vector to add

Definition at line 148 of file qvvector.h.

QVVector::operator QPointF (  )  const [inline]

Convert to QPointF operator.

Cast from homogeneous coordinates.

Definition at line 155 of file qvvector.h.

QVVector::operator gsl_vector * (  )  const [inline]

Convert to gsl_vector * operator.

Parameters:
value gsl_vector

Definition at line 168 of file qvvector.h.

void QVVector::set ( const double  value  )  [inline]

Set vector elements to a value.

Parameters:
value value to set all the elements of the vector

Definition at line 182 of file qvvector.h.

QVVector QVVector::subVector ( const int  firstIndex,
const int  lastIndex 
) [inline]

Set vector elements to a value.

Parameters:
value value to set all the elements of the vector

Definition at line 191 of file qvvector.h.

Referenced by QVQuaternion::quaternionProduct().

QVVector QVVector::scalarDivision ( const double  value  )  const [inline]

Scalar division.

Parameters:
value value to divide each component of the vector
See also:
operator/(const double)

Definition at line 208 of file qvvector.h.

Referenced by operator/().

QVVector QVVector::scalarMultiplication ( const double  value  )  const [inline]

Scalar multiplication.

Parameters:
value value to multiply each component of the vector
See also:
operator*(const double)

Definition at line 220 of file qvvector.h.

Referenced by operator *().

double QVVector::norm2 (  )  const [inline]

Norm 2 of the vector.

See also:
normalize

Definition at line 231 of file qvvector.h.

Referenced by GetExtrinsicCameraMatrixFromHomography(), HomographyTestError(), normalize(), QVQuaternion::QVQuaternion(), and QVQuaternion::trackball().

QVVector QVVector::normalize (  )  const [inline]

Normalize vector.

Divides each element of the vector by its second norm.

See also:
norm

Definition at line 238 of file qvvector.h.

double QVVector::dotProduct ( const QVVector vector  )  const

Vector dot product.

Parameters:
vector operand for the product
See also:
operator*

Definition at line 38 of file qvvector.cpp.

Referenced by operator *().

QVVector QVVector::crossProduct ( const QVVector vector  )  const

Vector cross product.

Computes the cross product for two vectors of size 3

Parameters:
vector operand for the product
See also:
operator^

Definition at line 49 of file qvvector.cpp.

Referenced by operator^().

QVVector QVVector::add ( const QVVector vector  )  const

Vector add.

Parameters:
vector term for the operation
See also:
operator+

Definition at line 72 of file qvvector.cpp.

QVVector QVVector::substract ( const QVVector vector  )  const

Vector substraction.

Parameters:
vector subtrahend for the operation
See also:
operator-

Definition at line 83 of file qvvector.cpp.

Referenced by operator-().

bool QVVector::equals ( const QVVector vector  )  const

Compare operator.

Parameters:
vector vector to compare
See also:
equals

Definition at line 94 of file qvvector.cpp.

Referenced by operator==().

static const QVVector QVVector::gaussianDistribution ( const int  size,
const double  sigma 
) [inline, static]

Gaussian distributed values vector.

This function generates a vector containing values for a gaussian distribution, with median in the middle value of the vector, and deviation indicated.

Parameters:
vector vector to compare
See also:
equals

Definition at line 281 of file qvvector.h.


The documentation for this class was generated from the following files: