Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Protected Attributes | Related Functions | List of all members
BIAS::Vector3< T > Class Template Reference

class Vector3 contains a Vector of fixed dim. More...

#include <Base/Math/Matrix.hh>

+ Inheritance diagram for BIAS::Vector3< T >:
+ Collaboration diagram for BIAS::Vector3< T >:

Public Types

typedef T value_type
 

Public Member Functions

template<>
BIAS::Vector3< double > CoordEuclideanToSphere () const
 
template<>
Vector3< double > CoordSphereToEuclidean () const
 
template<>
Matrix< unsigned int > GetSkewSymmetricMatrix () const
 
 Vector3 ()
 
 Vector3 (const Vector3< T > &vec)
 copy constructor More...
 
 Vector3 (const T &scalar)
 assignment with a constant value for all elements More...
 
 Vector3 (const T *pv)
 assignment with an array of values which is copied into this ones class members More...
 
 Vector3 (char *s)
 constructor with element assignment More...
 
 Vector3 (const T &x, const T &y, const T &z)
 constructor with element assigment using explicit values More...
 
 Vector3 (const Vector< T > &v)
 cast constructor More...
 
 ~Vector3 ()
 
Iterator Functions
T const * begin () const
 Iterator to first component of vector. More...
 
T * begin ()
 
T const * end () const
 Iterator pointing to one element after the last vector element. More...
 
T * end ()
 
Set Functions
void Set (const T *pv)
 copy the array of vectorsize beginning at *T to this->data_ More...
 
void Set (const T &scalar)
 set all elements to a scalar value More...
 
void Set (const T &x, const T &y, const T &z)
 set elementwise with given scalar values More...
 
void Set (const Vector< T > &vec)
 Sets this form elements of Vector<T>. More...
 
void SetZero ()
 set all values to 0 More...
 
void clear ()
 stl conform interface More...
 
Get Functions
const unsigned int Size () const
 
const unsigned int size () const
 
const unsigned int GetNumElements () const
 
bool IsZero () const
 
double Length () const
 returns the Euclidean Length of the Vector More...
 
const T * GetData () const
 get the data pointer the member function itself is const (before {..}) because it doesn't change the this object. More...
 
T * GetData ()
 
NormL1 () const
 Return the L1 norm: |a| + |b| + |c|. More...
 
double NormL2 () const
 the L2 norm sqrt(a^2 + b^2 + c^2) More...
 
double Dist (const Vector3< T > &vec) const
 Return the euclidean distance of 2 vectors. More...
 
double DistLinf (const Vector3< T > &vec) const
 Return the L inf distance of 2 vectors. More...
 
Normalization
Vector3< T > & Normalize ()
 normalize this vector to length 1 More...
 
Vector3< T > & Normalize (Matrix3x3< T > &cov)
 normalizes the vector to 1 and transfroms the associated covariance matrix More...
 
BIAS::Vector3< T > GetNormalized () const
 return a normalized vector of this More...
 
Arithmetic
void CrossProduct (const Vector3< T > &argvec, Vector3< T > &destvec) const
 cross product of two vectors destvec = this x argvec More...
 
Vector3< T > CrossProduct (const Vector3< T > &argvec) const
 
void ScalarProduct (const Vector3< T > &argvec, T &result) const
 scalar product (=inner product) of two vectors, storing the result in result More...
 
ScalarProduct (const Vector3< T > &argvec) const
 scalar product (=inner product) of two vectors returns a scalar More...
 
void ElementwiseProduct (const Vector3< T > &argvec, Vector3< T > &destvec) const
 multiply two vectors elementwise and store the result vector to destvec More...
 
Vector3< T > ElementwiseProduct (const Vector3< T > &argvec) const
 multiply two vectors elementwise and return the result vector More...
 
void ElementwiseDivision (const Vector3< T > &argvec, Vector3< T > &destvec) const
 
Vector3< T > ElementwiseDivision (const Vector3< T > &argvec) const
 divide elementwise More...
 
void AddIP (const T &scalar)
 Addition (in place) of an scalar. More...
 
void Add (const T &scalar, Vector3< T > &dest) const
 Addition with a scalar, storing results in destionation vector. More...
 
void SubIP (const T &scalar)
 Substraction (in place) of an scalar. More...
 
void Sub (const T &scalar, Vector3< T > &dest) const
 Substraction with a scalar, storing results in destination vector. More...
 
void MultiplyIP (const T &scalar)
 Multiplication (in place) of an scalar. More...
 
void MultIP (const T &scalar)
 
void Multiply (const T &scalar, Vector3< T > &dest) const
 Multiplication with a scalar, storing results in destination vector. More...
 
void Mult (const T &scalar, Vector3< T > &dest) const
 
void DivideIP (const T &scalar)
 Division (in place) of an scalar. More...
 
void DivIP (const T &scalar)
 
void Divide (const T &scalar, Vector3< T > &dest) const
 Division with a scalar, storing results in destination vector. More...
 
void Div (const T &scalar, Vector3< T > &dest) const
 
void AddIP (const Vector3< T > &argvec)
 in place adding More...
 
void Add (const Vector3< T > &argvec, Vector3< T > &destvec) const
 adding of two vectors, storing the result in destvec More...
 
void SubIP (const Vector3< T > &argvec)
 in place substraction More...
 
void Sub (const Vector3< T > &argvec, Vector3< T > &destvec) const
 subtracting of two Vectors, storing the result in destvec More...
 
Misc
void OuterProduct (const Vector3< T > &v, Matrix3x3< T > &res) const
 outer product, constructs a matrix. More...
 
Matrix3x3< T > OuterProduct (const Vector3< T > &v) const
 
Matrix< T > GetSkewSymmetricMatrix () const
 constructs a skew symmetric 3x3 matrix from (*this), which can be used instead of the cross product More...
 
BIAS::Vector3< T > CoordSphereToEuclidean () const
 coordinate transfrom. More...
 
BIAS::Vector3< T > PolarToCartesian () const
 
BIAS::Vector3< T > CoordSphereToEuclidian () const
 
BIAS::Vector3< T > CoordEuclideanToSphere () const
 coordinate transform. More...
 
BIAS::Vector3< T > CartesianToPolar () const
 
BIAS::Vector3< T > CoordEuclidianToSphere () const
 
T & Radius ()
 r for polar/sphere content JW More...
 
Radius () const
 
T & Phi ()
 
Phi () const
 
T & Theta ()
 
Theta () const
 
int LoadBogTC (const std::string &filename)
 reads the TC part of a BOG file which is used by Daimler Chrysler for storing Camera center position. More...
 
bool Load (const std::string &filename)
 method to load directly from a given filename. More...
 
bool Save (const std::string &filename) const
 method to save directly to a given filename. More...
 
Operators
Vector3< T > & operator= (const Vector3< T > &vec)
 assignment operator More...
 
Vector3< T > & operator= (const Vector< T > &vec)
 assignment operator More...
 
const T & operator[] (const int i) const
 access an element of the vector with 0-based indizes. More...
 
T & operator[] (const int i)
 access an element of the vector with 0-based indizes. More...
 
bool operator== (const Vector3< T > &arg) const
 Comparison operator 'equal'. More...
 
bool operator!= (const Vector3< T > &arg) const
 Comparison operator 'not equal'. More...
 

Protected Attributes

data_ [VECTOR3_SIZE]
 

Related Functions

(Note that these are not member functions.)

template<class T >
Vector3< T > operator* (const Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > operator* (const T &scalar, const Vector3< T > &vec)
 
template<class T >
operator* (const Vector3< T > &vec, const Vector3< T > &arg)
 
template<class T >
Vector3< T > operator* (const Matrix3x3< T > &mat, const Vector3< T > &argvec)
 
template<class T >
Vector2< T > operator* (const Matrix2x3< T > &mat, const Vector3< T > &vec)
 
template<class T >
Vector< T > operator* (const BIAS::Matrix< T > &mat, const Vector3< T > &vec)
 
template<class T >
Vector3< T > & operator*= (Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > operator+ (const Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > operator+ (const T &scalar, const Vector3< T > &vec)
 
template<class T >
Vector3< T > operator+ (const Vector3< T > &vec, const Vector3< T > &argvec)
 
template<class T >
Vector3< T > operator+ (const Vector3< T > &vec, const Vector< T > &argvec)
 
template<class T >
Vector3< T > & operator+= (Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > & operator+= (Vector3< T > &vec, const Vector3< T > &argvec)
 
template<class T >
Vector3< T > operator- (const Vector3< T > &v)
 
template<class T >
Vector3< T > operator- (const Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > operator- (const T &scalar, const Vector3< T > &vec)
 
template<class T >
Vector3< T > operator- (const Vector3< T > &vec, const Vector3< T > &argvec)
 
template<class T >
Vector3< T > & operator-= (Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > & operator-= (Vector3< T > &vec, const Vector3< T > &argvec)
 
template<class T >
Vector3< T > operator/ (const Vector3< T > &vec, const T &scalar)
 
template<class T >
Vector3< T > & operator/= (Vector3< T > &vec, const T &scalar)
 
template<class T >
bool operator< (const Vector3< T > &a, const Vector3< T > &b)
 
std::ostream & operator<< (std::ostream &os, const BIAS::Vector3< unsigned char > &vec)
 Output with streams specialization for numerical display of unsigned char instead of alphabetically. fout format should be consistent with template implementation and Vector<> More...
 
template<class T >
std::ostream & operator<< (std::ostream &os, const BIAS::Vector3< T > &vec)
 
template<class T >
bool operator<= (const Vector3< T > &a, const Vector3< T > &b)
 
template<class T >
bool operator> (const Vector3< T > &a, const Vector3< T > &b)
 
template<class T >
bool operator>= (const Vector3< T > &a, const Vector3< T > &b)
 
std::istream & operator>> (std::istream &is, Vector3< unsigned char > &vec)
 Input with streams specialization for numerical display of unsigned char instead of alphebetically. fout format should be consistent with template implementation and Vector<> More...
 
template<class T >
std::istream & operator>> (std::istream &is, Vector3< T > &vec)
 Input with streams. More...
 

Detailed Description

template<class T>
class BIAS::Vector3< T >

class Vector3 contains a Vector of fixed dim.

3

It's elment type is templated. manual loop unrolling is used if possible. The Vector is in row-major order (3 rows, 1 column) the indizes begin with zero (to size-1)

operators are no longer class members removed memory leak by returning reference in operators removed inline code from class definition, woelk 01 2003

Author
Jan Woetzel, woelk
Examples:
ExampleDrawLines.cpp, and ExampleProjectionMapping.cpp.

Definition at line 53 of file Matrix.hh.

Member Typedef Documentation

template<class T>
typedef T BIAS::Vector3< T >::value_type

Definition at line 76 of file Vector3.hh.

Constructor & Destructor Documentation

template<class T>
BIAS::Vector3< T >::Vector3 ( )
inline

Definition at line 78 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::~Vector3 ( )
inline

Definition at line 80 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::Vector3 ( const Vector3< T > &  vec)
inline

copy constructor

Author
Jan Woetzel (03/05/2002)

Definition at line 84 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::Vector3 ( const T &  scalar)
inlineexplicit

assignment with a constant value for all elements

Author
Jan Woetzel (03/01/2002)

Definition at line 88 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::Vector3 ( const T *  pv)
inlineexplicit

assignment with an array of values which is copied into this ones class members

Author
Jan Woetzel (02/28/2002)

Definition at line 93 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::Vector3 ( char *  s)
inlineexplicit

constructor with element assignment

Author
Jan Woetzel alpha (03/01/2002)

Definition at line 524 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::Vector3 ( const T &  x,
const T &  y,
const T &  z 
)
inline

constructor with element assigment using explicit values

Author
Ingo Thomsen, tested (03/04/2002)

Definition at line 102 of file Vector3.hh.

template<class T>
BIAS::Vector3< T >::Vector3 ( const Vector< T > &  v)

cast constructor

Author
Jan Woetzel, untested (03/22/2002)

Definition at line 274 of file Vector3.cpp.

References TNT::Vector< T >::size().

Member Function Documentation

template<class T>
void BIAS::Vector3< T >::Add ( const T &  scalar,
Vector3< T > &  dest 
) const
inline

Addition with a scalar, storing results in destionation vector.

Author
Ingo Thomsen

Definition at line 684 of file Vector3.hh.

References BIAS::Vector3< T >::data_.

Referenced by BIAS::TrackballControl::MoveInViewingDirection(), BIAS::Vector3< T >::operator+(), and BIAS::TrackballControl::RotateAroundPOI().

template<class T>
void BIAS::Vector3< T >::Add ( const Vector3< T > &  argvec,
Vector3< T > &  destvec 
) const
inline

adding of two vectors, storing the result in destvec

Author
Ingo Thomsen tested

Definition at line 691 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::AddIP ( const T &  scalar)
inline
template<class T>
void BIAS::Vector3< T >::AddIP ( const Vector3< T > &  argvec)
inline

in place adding

Author
Ingo Thomsen tested

Definition at line 349 of file Vector3.hh.

template<class T>
T const* BIAS::Vector3< T >::begin ( ) const
inline

Iterator to first component of vector.

Author
Stefan Reinhold

Definition at line 134 of file Vector3.hh.

template<class T>
T* BIAS::Vector3< T >::begin ( )
inline

Definition at line 137 of file Vector3.hh.

template<class T>
BIAS::Vector3<T> BIAS::Vector3< T >::CartesianToPolar ( ) const
inline

Definition at line 422 of file Vector3.hh.

Referenced by BIAS::CameraViewController::MoveOrbit().

template<class T >
void BIAS::Vector3< T >::clear ( )
inline

stl conform interface

Definition at line 564 of file Vector3.hh.

Referenced by BIAS::Interpolator::GetControlPoints(), and BIAS::LEDDetector::Search_().

template<>
BIAS::Vector3< double > BIAS::Vector3< double >::CoordEuclideanToSphere ( ) const

Definition at line 127 of file Vector3.cpp.

template<class T >
BIAS::Vector3< T > BIAS::Vector3< T >::CoordEuclideanToSphere ( ) const

coordinate transform.

compute the sphere coordinates(r, phi, theta) for (this) given euclidean point p=(x,y,z) with radius : distance to center, theta : radian angle between positive z-axis and p=(x,y,z). (0-pi) phi : radian angle between positive x-axis and projection of p=(x,y,z) into XY plane. (0-2pi) assume (x,y,z) is in orthogonal right-hand-system.

Author
Jan Woetzel 09/2003

Definition at line 113 of file Vector3.cpp.

Referenced by BIAS::PMatrixEstimation::AutoCalib_(), BIAS::Parametrization::EMatrixToParams(), BIAS::ProjectionParametersSpherical::ProjectLocal(), BIAS::ProjectionParametersSphericalFast::ProjectLocal(), and BIAS::ProjectionParametersSpherical::TransfCoordRotateSphere2Image_().

template<class T>
BIAS::Vector3<T> BIAS::Vector3< T >::CoordEuclidianToSphere ( ) const
inline

Definition at line 426 of file Vector3.hh.

template<>
Vector3< double > BIAS::Vector3< double >::CoordSphereToEuclidean ( ) const

Definition at line 93 of file Vector3.cpp.

template<class T >
Vector3< T > BIAS::Vector3< T >::CoordSphereToEuclidean ( ) const

coordinate transfrom.

compute the euclidean coord p=(x,y,z) for (this) given sphere coord sph=(radius, phi, theta) with radius : distance to center, theta : radian angle between positive z-axis and p=(x,y,z). (0-pi) phi : radian angle between positive x-axis and projection of p=(x,y,z) into XY plane. (0-2pi) assume (x,y,z) is in orthogonal right-hand-system.

Author
Jan Woetzel 09/2003

Definition at line 78 of file Vector3.cpp.

Referenced by BIAS::GenSynthMatches::_CreateCamMovement(), BIAS::PMatrixEstimation::AutoCalib_(), BIAS::ProjectionParametersSpherical::EstimateUndistortionPolynomial(), BIAS::Parametrization::ParamsToEMatrix(), BIAS::ProjectionParametersSpherical::TransfCoordRotateSphere2Image_(), BIAS::ProjectionParametersSpherical::UnProjectLocal(), and BIAS::ProjectionParametersSphericalFast::UnProjectLocal().

template<class T>
BIAS::Vector3<T> BIAS::Vector3< T >::CoordSphereToEuclidian ( ) const
inline

Definition at line 407 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::CrossProduct ( const Vector3< T > &  argvec,
Vector3< T > &  destvec 
) const
inline

cross product of two vectors destvec = this x argvec

Author
Ingo Thomsen, Jan Woetzel alpha

Definition at line 594 of file Vector3.hh.

Referenced by BIAS::GenSynthMatches::_CreateCamMovement(), BIAS::ThreeDOut::AddTriangleMesh(), BIAS::PMatrix::BBCIn(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateMeanOrientation(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateRectifiedBases(), BIAS::ImageBlender::ComputeCylCamGeometry(), BIAS::ImageBlenderIncremental::ComputeCylCamGeometry_(), BIAS::ThreeDOut::ComputePlaneCorners(), BIAS::EpipolarLine::DrawDistortedLine(), BIAS::RMatrixBase::EnforceConstraints(), BIAS::TriangleMesh::GenerateVertexNormals(), BIAS::CheckerboardDetectorCrossFilter::GetFinalCheckerboard(), BIAS::TrifocalTensor::GetFMatrix21(), BIAS::TrifocalTensor::GetFMatrix31(), BIAS::TrackballBase::GetRotationAngle(), BIAS::TrackballBase::GetRotationAxisAndAngle(), BIAS::TrackballBase::GetTranslation(), BIAS::ProjectionParametersBase::GetUnProjectionJacobian(), BIAS::CamPoseCalib::GuessInitialCam_(), BIAS::EpipolarLine::Init(), BIAS::Triangulation::Intersect(), BIAS::FlyControl::LeftAndRightMouseMoved(), BIAS::TrackballControl::LeftAndRightMouseMoved(), BIAS::FlyControl::LeftMouseMoved(), BIAS::TrackballControl::LeftMouseMoved(), BIAS::glfMatrix::MakeLookAt(), BIAS::CameraViewController::MoveCoplanar(), BIAS::CameraViewController::MoveOrbit(), BIAS::EpipolarLine::ProjectEpipolarPlane(), BIAS::ProjectionParametersIO::ReadFromBBCStream(), BIAS::SceneTexturedPlane::Resize(), BIAS::HomgLine2D::Set(), BIAS::GLProjectionParametersBase::SetExtrinsics(), BIAS::RMatrixBase::SetFromHV(), BIAS::RMatrixBase::SetFromOriUp(), BIAS::RMatrixBase::SetFromOriUpGL(), BIAS::DualQuaternion< QUAT_TYPE >::SetFromRigidMotion(), BIAS::TriangleMesh::ThreePointsToPlane_(), and BIAS::Normalization::Woelk().

template<class T>
Vector3<T> BIAS::Vector3< T >::CrossProduct ( const Vector3< T > &  argvec) const
inline
Returns
cross product = this x argvec
Author
Jan Woetzel alpha

Definition at line 267 of file Vector3.hh.

template<class T>
double BIAS::Vector3< T >::Dist ( const Vector3< T > &  vec) const
inline

Return the euclidean distance of 2 vectors.

Author
Birger Streckel
Date
08/2002

Definition at line 639 of file Vector3.hh.

Referenced by BIAS::CamPoseCalib::Estimate().

template<class T>
double BIAS::Vector3< T >::DistLinf ( const Vector3< T > &  vec) const
inline

Return the L inf distance of 2 vectors.

Author
djung
Date
2009/07 untested

Definition at line 646 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::Div ( const T &  scalar,
Vector3< T > &  dest 
) const
inline

Definition at line 343 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::Divide ( const T &  scalar,
Vector3< T > &  dest 
) const
inline

Division with a scalar, storing results in destination vector.

Author
Ingo Thomsen

Definition at line 724 of file Vector3.hh.

References BIAS::Vector3< T >::data_.

Referenced by BIAS::Vector3< T >::operator/().

template<class T>
void BIAS::Vector3< T >::DivideIP ( const T &  scalar)
inline

Division (in place) of an scalar.

Author
Ingo Thomsen

Definition at line 719 of file Vector3.hh.

Referenced by BIAS::clfTrimmedICP::ComputeOptimalMotion_(), and BIAS::Vector3< T >::operator/=().

template<class T>
void BIAS::Vector3< T >::DivIP ( const T &  scalar)
inline

Definition at line 338 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::ElementwiseDivision ( const Vector3< T > &  argvec,
Vector3< T > &  destvec 
) const
inline

Definition at line 625 of file Vector3.hh.

template<class T>
Vector3<T> BIAS::Vector3< T >::ElementwiseDivision ( const Vector3< T > &  argvec) const
inline

divide elementwise

Author
Jan Woetzel

Definition at line 300 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::ElementwiseProduct ( const Vector3< T > &  argvec,
Vector3< T > &  destvec 
) const
inline

multiply two vectors elementwise and store the result vector to destvec

Author
Jan Woetzel alpha (03/06/2002)

Definition at line 617 of file Vector3.hh.

template<class T>
Vector3<T> BIAS::Vector3< T >::ElementwiseProduct ( const Vector3< T > &  argvec) const
inline

multiply two vectors elementwise and return the result vector

Author
Jan Woetzel (03/06/2002)

Definition at line 288 of file Vector3.hh.

template<class T>
T const* BIAS::Vector3< T >::end ( ) const
inline

Iterator pointing to one element after the last vector element.

Author
Stefan Reinhold

Definition at line 143 of file Vector3.hh.

template<class T>
T* BIAS::Vector3< T >::end ( )
inline

Definition at line 146 of file Vector3.hh.

template<class T>
const T* BIAS::Vector3< T >::GetData ( ) const
inline

get the data pointer the member function itself is const (before {..}) because it doesn't change the this object.

Returns
the const pointer to the data array for reading
Author
Jan Woetzel untested (02/28/2002)

Definition at line 202 of file Vector3.hh.

Referenced by BIAS::NurbsSurface::GetSurfacePoint(), BIAS::ThreeDOut::OpenGLOutPMatrices_(), BIAS::HomgPoint2D::operator=(), BIAS::Vector3< HOMGPOINT2D_TYPE >::operator=(), BIAS::Vector3< T >::operator>>(), BIAS::operator>>(), and BIAS::EuclideanTransf3D::Set().

template<class T>
T* BIAS::Vector3< T >::GetData ( )
inline

Definition at line 203 of file Vector3.hh.

template<class T >
Vector3< T > BIAS::Vector3< T >::GetNormalized ( ) const

return a normalized vector of this

norm. to length 1

Author
Jan Woetzel
Date
06/2003

Definition at line 47 of file Vector3.cpp.

References BIAS::Vector3< T >::Normalize().

Referenced by BIAS::PMatrix::GetUp_gl(), BIAS::RMatrixBase::SetFromHV(), BIAS::RMatrixBase::SetFromOrthogonalBasis(), and BIAS::ProjectionParametersZoom::UnProjectLocal().

template<class T>
const unsigned int BIAS::Vector3< T >::GetNumElements ( ) const
inline

Definition at line 187 of file Vector3.hh.

template<>
Matrix< unsigned int > BIAS::Vector3< unsigned int >::GetSkewSymmetricMatrix ( ) const

Definition at line 245 of file Vector3.cpp.

References BIAS::Matrix< T >::SetZero().

template<class T >
Matrix< T > BIAS::Vector3< T >::GetSkewSymmetricMatrix ( ) const

constructs a skew symmetric 3x3 matrix from (*this), which can be used instead of the cross product

Author
koeser 09/2003

Definition at line 257 of file Vector3.cpp.

References BIAS::Matrix< T >::GetData(), and BIAS::Matrix< T >::SetZero().

Referenced by BIAS::PMatrixLinear::ComputeCalibrated(), BIAS::FMatrix::ComputeFromPMatrices(), BIAS::Conic2D::GetLines(), BIAS::FMatrixEstimation::GoldStandard(), and BIAS::Conic2D::IntersectLine().

template<class T >
bool BIAS::Vector3< T >::IsZero ( ) const
inline
Returns
true iff all elements are equal zero JW

Definition at line 571 of file Vector3.hh.

template<class T>
double BIAS::Vector3< T >::Length ( ) const
inline
template<class T >
bool BIAS::Vector3< T >::Load ( const std::string &  filename)

method to load directly from a given filename.

internally using stream operator

Author
Jan Woetzel 09/2005
Returns
false in case of error, true in case of success

Definition at line 215 of file Vector3.cpp.

template<class T >
int BIAS::Vector3< T >::LoadBogTC ( const std::string &  filename)

reads the TC part of a BOG file which is used by Daimler Chrysler for storing Camera center position.

Returns
0 for success, negative for errror
Author
Jan Woetzel 03/2005

Definition at line 161 of file Vector3.cpp.

Referenced by BIAS::PMatrixBase::LoadBOG().

template<class T>
void BIAS::Vector3< T >::Mult ( const T &  scalar,
Vector3< T > &  dest 
) const
inline
template<class T>
void BIAS::Vector3< T >::MultIP ( const T &  scalar)
inline
template<class T>
void BIAS::Vector3< T >::Multiply ( const T &  scalar,
Vector3< T > &  dest 
) const
inline

Multiplication with a scalar, storing results in destination vector.

Author
Ingo Thomsen

Definition at line 698 of file Vector3.hh.

References BIAS::Vector3< T >::data_.

Referenced by BIAS::TrackballBase::GetMoveinViewDirection(), BIAS::Triangulation::Intersect(), BIAS::TrackballControl::MoveInViewingDirection(), and BIAS::Vector3< T >::operator*().

template<class T>
void BIAS::Vector3< T >::MultiplyIP ( const T &  scalar)
inline
template<class T >
Vector3< T > & BIAS::Vector3< T >::Normalize ( )
inline

normalize this vector to length 1

Author
Jan Woetzel / koeser
Returns
reference to updated (*this)
Date
04/25/2002

Definition at line 663 of file Vector3.hh.

Referenced by BIAS::PMatrixEstimation::AutoCalib_(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateMeanOrientation(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateRectifiedBases(), BIAS::TrifocalTensorBase::CheckPointCorr(), BIAS::ImageBlender::ComputeCylCamGeometry(), BIAS::ImageBlenderIncremental::ComputeCylCamGeometry_(), BIAS::PMatrixEstimation::ComputeFromFDirect(), BIAS::PMatrixEstimation::ComputeFromFQuasiEuklid(), BIAS::SceneOpenSceneGraph::createMirroredScene(), BIAS::GenGroundTruth::GenerateRandomCube(), BIAS::TriangleMesh::GenerateVertexNormals(), BIAS::RotationAveraging::GeodesicL1Mean(), BIAS::RotationAveraging::GeodesicL2Mean(), BIAS::FMatrix::GetEpipoles(), BIAS::PMatrix::GetFieldOfViewY(), BIAS::GeometryGL::GetImgCorner3d(), BIAS::ProjectionParametersPerspective::GetMinimalAngleInCorner_(), BIAS::TrackballBase::GetMoveinViewDirection(), BIAS::Vector3< T >::GetNormalized(), BIAS::TrifocalTensor::GetPMatrix2(), BIAS::TrifocalTensor::GetPMatrix3(), BIAS::Conic2D::GetPoint(), BIAS::TrackballBase::GetRotationAngle(), BIAS::TrackballBase::GetRotationAxisAndAngle(), BIAS::RMatrixBase::GetRotationAxisAngle(), BIAS::TrackballBase::GetTranslation(), BIAS::ProjectionParametersBase::GetUnProjectionJacobian(), BIAS::FMatrixEstimation::GoldStandard(), BIAS::AutoControl::GoTo(), BIAS::CamPoseCalib::GuessInitialCam_(), BIAS::Triangulation::Intersect(), BIAS::FlyControl::LeftAndRightMouseMoved(), BIAS::TrackballControl::LeftAndRightMouseMoved(), BIAS::FlyControl::LeftMouseMoved(), BIAS::TrackballControl::LeftMouseMoved(), BIAS::glfMatrix::MakeLookAt(), BIAS::TriangleMesh::MakeTriangles_(), BIAS::PMDImageProc::MetaFromPoseAndK(), BIAS::CameraViewController::MoveCoplanar(), BIAS::TrackballControl::MoveInViewingDirection(), BIAS::CameraViewController::MoveOrbit(), BIAS::Nurbs3D< ControlPointsT >::Nurbs3D(), BIAS::SceneBase::PerformCollision(), BIAS::EpipolarLine::ProjectEpipolarPlane(), BIAS::ProjectionParametersOrthographic::ProjectionParametersOrthographic(), BIAS::SceneTexturedPlane::Resize(), BIAS::GLProjectionParametersBase::SetExtrinsics(), BIAS::RMatrixBase::SetFromAxisAngle(), BIAS::RMatrixBase::SetFromOriUp(), BIAS::RMatrixBase::SetFromOriUpGL(), BIAS::ProjectionParametersOrthographic::SetParameters(), BIAS::PMDWarp::SetupDefaultPrimitiveRendering_(), BIAS::TriangleMesh::ThreePointsToPlane_(), BIAS::TrifocalTensor::TransferView3(), BIAS::PoseParametrizationCovariance::Transform(), BIAS::GLProjectionParametersBase::TranslateDepthToZ(), BIAS::Triangulation::Triangulate(), BIAS::ProjectionParametersSphericalFast::UnProjectLocal(), BIAS::ProjectionParametersCylindric::UnProjectLocal(), BIAS::Projection::UnProjectToPoint(), BIAS::ProjectionParametersSphericalFast::ViewDifference(), BIAS::ProjectionParametersSpherical::ViewDifference(), and BIAS::ThreeDOut::VRMLOutImages().

template<class T>
Vector3< T > & BIAS::Vector3< T >::Normalize ( Matrix3x3< T > &  cov)

normalizes the vector to 1 and transfroms the associated covariance matrix

Author
woelk 03/2006
the jacobian of the function x' = x/|x| can be written as

J = 1/|x| ( I - (xx^T)/(x^Tx) ), cf. Foerstner, 2005 "Uncertainty and Projective Geometry"

Definition at line 56 of file Vector3.cpp.

References BIAS::MatrixIdentity, and BIAS::Matrix3x3< T >::Transpose().

template<class T >
T BIAS::Vector3< T >::NormL1 ( ) const
inline

Return the L1 norm: |a| + |b| + |c|.

Author
Ingo Thomsen
Date
04/11/2002 tested

Definition at line 677 of file Vector3.hh.

template<class T >
double BIAS::Vector3< T >::NormL2 ( ) const
inline

the L2 norm sqrt(a^2 + b^2 + c^2)

Author
woelk 01 2003

Definition at line 633 of file Vector3.hh.

Referenced by BIAS::GenSynthMatches::_CreateCamMovement(), BIAS::ThreeDOut::AddTriangleMesh(), BIAS::SceneBase::ApplyTimeStep(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateRectifiedBases(), BIAS::ImageBlender::CheckFov(), BIAS::ImageBlenderIncremental::CheckFov_(), BIAS::Pose::CheckLookAt_(), BIAS::HMatrix::ComputeLinearizationError(), BIAS::PMatrixEstimation::ComputeRotationCenter(), BIAS::PMatrix::Decompose_(), BIAS::CylindricalRectification< InputStorageType, OutputStorageType >::DetermineCylindricCameraBoundriesCylindric_(), BIAS::CylindricalRectification< InputStorageType, OutputStorageType >::DetermineCylindricCameraBoundriesPerspective_(), BIAS::RectificationViaProjectionMappingBase< InputStorageType, OutputStorageType >::Disp2Depth(), BIAS::ProjectionParametersPerspective::DoesPointProjectIntoImageLocal(), BIAS::EpipolarLine::DrawDistortedLine(), BIAS::Parametrization::EMatrixToParams(), BIAS::RMatrixBase::EnforceConstraints(), BIAS::PMDImageProc::FitDepthTo2DImage(), BIAS::PMDImageProc::FitDepthTo2DImageFree_(), BIAS::TriangleMesh::GenerateDenseMesh(), BIAS::TriangleMesh::GenerateTexturedQuad(), BIAS::TriangleMesh::GenerateVertexNormals(), BIAS::RotationAveraging::GeodesicL1Mean(), BIAS::RotationAveraging::GeodesicL2Mean(), BIAS::Quaternion< QUAT_TYPE >::GetAxisAngle(), BIAS::SceneThreeDOutWrapper::GetBoundingBox(), BIAS::RMatrixBase::GetCheckFailureReason(), BIAS::PMatrix::GetImagePlane(), BIAS::Conic2D::GetLinearizedOffset(), BIAS::Conic2D::GetLines(), BIAS::ProjectionParametersPerspective::GetMinimalAngleInCorner_(), BIAS::TrackballBase::GetMoveinViewDirection(), BIAS::PMatrix::GetNormRayWorldCoo(), BIAS::Quaternion< QUAT_TYPE >::GetRotationAxis(), BIAS::ProjectionParametersBase::GetSphericalViewingRange(), BIAS::ProjectionParametersBase::GetUnProjectionJacobian(), BIAS::CamPoseCalib::GuessInitialCam_(), BIAS::Triangulation::Intersect(), BIAS::TriangulationMidPoint::Intersect_(), BIAS::Conic2D::IntersectConic(), BIAS::Conic2D::IntersectLine(), BIAS::FlyControl::LeftMouseDoubleClicked(), BIAS::ProjectionParametersSphericalSimple::Local2Angles(), BIAS::ProjectionParametersGreatCircles::LocalEuclideanCamCoordinates2SphericalAngles(), BIAS::TriangleMesh::MakeTriangles_(), BIAS::HMatrix::MapAcrossPlane(), BIAS::TrackballControl::MoveInViewingDirection(), BIAS::HomgPoint2DCov::Normalize(), BIAS::Parametrization::ParamsToEMatrix(), BIAS::SceneBase::PerformCollision(), BIAS::ImageWarper< StorageType >::Process(), BIAS::EpipolarLine::ProjectEpipolarPlane(), BIAS::ProjectionParametersOrthographic::ProjectionParametersOrthographic(), BIAS::ProjectionParametersSphericalSimple::ProjectLocal(), BIAS::ProjectionParametersPerspective::ProjectLocal(), BIAS::ProjectionParametersCylindric::ProjectLocal(), BIAS::ProjectionParametersIO::ReadFromBBCStream(), BIAS::TrackballControl::RotateAroundViewingDirection(), BIAS::HomgPlane3D::Set(), BIAS::RMatrixBase::Set(), BIAS::GLProjectionParametersBase::SetExtrinsics(), BIAS::RMatrixBase::SetFromAxisAngle(), BIAS::ProjectionParametersOrthographic::SetParameters(), BIAS::TrackballControl::SetPointOfInterest(), BIAS::Conic2D::SetSingleLine(), BIAS::Conic2D::SetTwoLines(), BIAS::PMDWarp::SetupDefaultPrimitiveRendering_(), BIAS::TriangleMesh::ThreePointsToPlane_(), BIAS::Covariance3Dto2D::Transform_(), BIAS::Triangulation::Triangulate(), BIAS::TriangulationMidPoint::Triangulate_(), BIAS::GLProjectionParametersBase::UnProject(), BIAS::ProjectionParametersPerspective::UnProjectLocal(), BIAS::ProjectionParametersSphericalSimple::UnProjectToImagePlane(), BIAS::ProjectionParametersZoom::UnProjectToImagePlane(), BIAS::ProjectionParametersGreatCircles::UnProjectToImagePlane(), BIAS::ProjectionParametersPerspective::UnProjectToImagePlane(), BIAS::Projection::UnProjectToPoint(), BIAS::ProjectionParametersBase::UnProjectToPointLocal(), BIAS::ProjectionParametersPerspective::UpdateMinZLocal(), BIAS::ProjectionParametersCylindric::ViewDifference(), BIAS::ThreeDOut::VRMLOutImages(), BIAS::Normalization::Woelk(), and BIAS::GLProjectionParametersPerspective::Z2Depth_().

template<class T>
bool BIAS::Vector3< T >::operator!= ( const Vector3< T > &  arg) const
inline

Comparison operator 'not equal'.

Author
woelk 01 2003

Definition at line 505 of file Vector3.hh.

template<class T>
Vector3<T>& BIAS::Vector3< T >::operator= ( const Vector3< T > &  vec)
inline

assignment operator

Author
woelk 01 2003

Definition at line 473 of file Vector3.hh.

template<class T>
Vector3<T>& BIAS::Vector3< T >::operator= ( const Vector< T > &  vec)
inline

assignment operator

Author
frahm 03 2004

Definition at line 479 of file Vector3.hh.

template<class T>
bool BIAS::Vector3< T >::operator== ( const Vector3< T > &  arg) const
inline

Comparison operator 'equal'.

Author
Ingo Thomsen tested

Definition at line 500 of file Vector3.hh.

template<class T >
const T & BIAS::Vector3< T >::operator[] ( const int  i) const
inline

access an element of the vector with 0-based indizes.

read only (no write) member function const because it doesn't change this object

Author
Jan Woetzel untested (03/01/2002)

Definition at line 580 of file Vector3.hh.

template<class T >
T & BIAS::Vector3< T >::operator[] ( const int  i)
inline

access an element of the vector with 0-based indizes.

write allowed

Author
Jan Woetzel untested (03/01/2002)

Definition at line 587 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::OuterProduct ( const Vector3< T > &  v,
Matrix3x3< T > &  res 
) const
template<class T>
Matrix3x3<T> BIAS::Vector3< T >::OuterProduct ( const Vector3< T > &  v) const
inline

Definition at line 379 of file Vector3.hh.

template<class T>
T& BIAS::Vector3< T >::Phi ( )
inline

Definition at line 436 of file Vector3.hh.

template<class T>
T BIAS::Vector3< T >::Phi ( ) const
inline

Definition at line 438 of file Vector3.hh.

template<class T>
BIAS::Vector3<T> BIAS::Vector3< T >::PolarToCartesian ( ) const
inline

Definition at line 403 of file Vector3.hh.

template<class T>
T& BIAS::Vector3< T >::Radius ( )
inline

r for polar/sphere content JW

Definition at line 431 of file Vector3.hh.

template<class T>
T BIAS::Vector3< T >::Radius ( ) const
inline

Definition at line 433 of file Vector3.hh.

template<class T >
bool BIAS::Vector3< T >::Save ( const std::string &  filename) const

method to save directly to a given filename.

internally using stream operator

Author
Jan Woetzel 09/2009
Returns
false in case of error, true in case of success

Definition at line 230 of file Vector3.cpp.

template<class T>
void BIAS::Vector3< T >::ScalarProduct ( const Vector3< T > &  argvec,
T &  result 
) const
inline

scalar product (=inner product) of two vectors, storing the result in result

Author
Jan Woetzel

Definition at line 603 of file Vector3.hh.

Referenced by BIAS::ThreeDOut::AddPMatrix(), BIAS::SceneBase::ApplyTimeStep(), BIAS::HomgLine3D::CalculateFootpoint(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateMeanOrientation(), BIAS::RectificationBase< InputStorageType, OutputStorageType >::CalculateRectifiedBases(), BIAS::ImageBlender::ComputeCylCamGeometry(), BIAS::ImageBlenderIncremental::ComputeCylCamGeometry_(), BIAS::ThreeDOut::ComputePlaneCorners(), BIAS::PMatrix::Decompose_(), BIAS::EpipolarLine::DrawDistortedLine(), BIAS::RMatrixBase::EnforceConstraints(), BIAS::RMatrixBase::GetCheckFailureReason(), BIAS::PMatrix::GetFieldOfView(), BIAS::PMatrix::GetFieldOfViewY(), BIAS::Conic2D::GetLinearizedOffset(), BIAS::ProjectionParametersPerspective::GetMinimalAngleInCorner_(), BIAS::Conic2D::GetPointDistance(), BIAS::AbsoluteOrientation::GetResidualErrors(), BIAS::TrackballBase::GetRotationAngle(), BIAS::TrackballBase::GetRotationAxisAndAngle(), BIAS::HomgLine3D::Homogenize(), BIAS::Triangulation::Intersect(), BIAS::FlyControl::LeftAndRightMouseMoved(), BIAS::TrackballControl::LeftAndRightMouseMoved(), BIAS::TriangleMesh::MakeTriangles_(), BIAS::HMatrix::MapAcrossPlane(), BIAS::HomgPoint2DCov::Normalize(), BIAS::EParametrization::Normalize(), BIAS::Vector3< T >::operator*(), BIAS::Triangulation::Optimal(), BIAS::SceneBase::PerformCollision(), BIAS::HomgPlane3D::Set(), BIAS::DualQuaternion< QUAT_TYPE >::SetFromRigidMotion(), BIAS::TriangleMesh::ThreePointsToPlane_(), BIAS::SceneBase::TimeToContact(), BIAS::Triangulation::Triangulate2D(), BIAS::ProjectionParametersCylindric::ViewDifference(), BIAS::ProjectionParametersSphericalFast::ViewDifference(), BIAS::ProjectionParametersSpherical::ViewDifference(), BIAS::ThreeDOut::VRMLOutWriteViewpoint(), BIAS::Normalization::Woelk(), and BIAS::PMatrix::WriteCAHV_10().

template<class T>
T BIAS::Vector3< T >::ScalarProduct ( const Vector3< T > &  argvec) const
inline

scalar product (=inner product) of two vectors returns a scalar

Author
Jan Woetzel, Ingo Thomsen alpha

Definition at line 610 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::Set ( const T *  pv)
inline
template<class T>
void BIAS::Vector3< T >::Set ( const T &  scalar)
inline

set all elements to a scalar value

Author
Jan Woetzel, untested (02/28/2002)

Definition at line 160 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::Set ( const T &  x,
const T &  y,
const T &  z 
)
inline

set elementwise with given scalar values

Author
Jan Woetzel alpha (02/28/2002)

Definition at line 540 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::Set ( const Vector< T > &  vec)
inline

Sets this form elements of Vector<T>.

Definition at line 547 of file Vector3.hh.

References TNT::Vector< T >::size().

template<class T >
void BIAS::Vector3< T >::SetZero ( )
inline
template<class T>
const unsigned int BIAS::Vector3< T >::Size ( ) const
inline
Returns
the size of this vector
Author
Jan Woetzel (02/28/2002)

Definition at line 183 of file Vector3.hh.

Referenced by BIAS::ImageBlender::ComputeCylCamGeometry(), and BIAS::ImageBlenderIncremental::ComputeCylCamGeometry_().

template<class T>
const unsigned int BIAS::Vector3< T >::size ( ) const
inline
template<class T>
void BIAS::Vector3< T >::Sub ( const T &  scalar,
Vector3< T > &  dest 
) const
inline
template<class T>
void BIAS::Vector3< T >::Sub ( const Vector3< T > &  argvec,
Vector3< T > &  destvec 
) const
inline

subtracting of two Vectors, storing the result in destvec

Author
Ingo Thomsen tested

Definition at line 712 of file Vector3.hh.

template<class T>
void BIAS::Vector3< T >::SubIP ( const T &  scalar)
inline

Substraction (in place) of an scalar.

Author
Ingo Thomsen

Definition at line 318 of file Vector3.hh.

Referenced by BIAS::HomgLine3D::CalculateFootpoint(), BIAS::Pose::LookAt(), and BIAS::Vector3< T >::operator-=().

template<class T>
void BIAS::Vector3< T >::SubIP ( const Vector3< T > &  argvec)
inline

in place substraction

Author
Ingo Thomsen tested

Definition at line 359 of file Vector3.hh.

template<class T>
T& BIAS::Vector3< T >::Theta ( )
inline

Definition at line 441 of file Vector3.hh.

template<class T>
T BIAS::Vector3< T >::Theta ( ) const
inline

Definition at line 443 of file Vector3.hh.

Friends And Related Function Documentation

template<class T >
Vector3< T > operator* ( const Vector3< T > &  vec,
const T &  scalar 
)
related

Definition at line 169 of file Operators.hh.

References BIAS::Vector3< T >::Multiply().

template<class T >
Vector3< T > operator* ( const T &  scalar,
const Vector3< T > &  vec 
)
related

Definition at line 178 of file Operators.hh.

References BIAS::Vector3< T >::Multiply().

template<class T >
T operator* ( const Vector3< T > &  vec,
const Vector3< T > &  arg 
)
related

Definition at line 403 of file Operators.hh.

References BIAS::Vector3< T >::ScalarProduct().

template<class T >
Vector3< T > operator* ( const Matrix3x3< T > &  mat,
const Vector3< T > &  argvec 
)
related

matrix-vector multiplication using 'Mult'

Author
Ingo Thomsen, Jan Woetzel, fw moved out of class, untested (04/17/2002)

Definition at line 638 of file Operators.hh.

References BIAS::Matrix3x3< T >::Mult().

template<class T >
Vector2< T > operator* ( const Matrix2x3< T > &  mat,
const Vector3< T > &  vec 
)
related

Definition at line 685 of file Operators.hh.

template<class T >
Vector< T > operator* ( const BIAS::Matrix< T > &  mat,
const Vector3< T > &  vec 
)
related
template<class T >
Vector3< T > & operator*= ( Vector3< T > &  vec,
const T &  scalar 
)
related

Definition at line 740 of file Vector3.hh.

References BIAS::Vector3< T >::MultiplyIP().

template<class T >
Vector3< T > operator+ ( const Vector3< T > &  vec,
const T &  scalar 
)
related

Addition operator with scalar argument, returning new vector

Author
Ingo Thomsen, woelk, tested

Definition at line 189 of file Operators.hh.

References BIAS::Vector3< T >::Add().

template<class T >
Vector3< T > operator+ ( const T &  scalar,
const Vector3< T > &  vec 
)
related

Definition at line 408 of file Operators.hh.

References BIAS::Vector3< T >::Add().

template<class T >
Vector3< T > operator+ ( const Vector3< T > &  vec,
const Vector3< T > &  argvec 
)
related

add operator for two Vectors, returning new vector

Author
Ingo Thomsen, woelk, tested

Definition at line 419 of file Operators.hh.

References BIAS::Vector3< T >::Add().

template<class T >
Vector3< T > operator+ ( const Vector3< T > &  vec,
const Vector< T > &  argvec 
)
related

add operator for Vector3, and Vector, so u dont have to cast...

Author
D. Grest, tested

Definition at line 430 of file Operators.hh.

References TNT::Vector< T >::size().

template<class T >
Vector3< T > & operator+= ( Vector3< T > &  vec,
const T &  scalar 
)
related

Addition operator with scalar argument

Author
Ingo Thomsen, woelk tested

Definition at line 750 of file Vector3.hh.

References BIAS::Vector3< T >::AddIP().

template<class T >
Vector3< T > & operator+= ( Vector3< T > &  vec,
const Vector3< T > &  argvec 
)
related

add operator for two Vectors

Author
Ingo Thomsen, woelk tested

Definition at line 760 of file Vector3.hh.

References BIAS::Vector3< T >::AddIP().

template<class T >
Vector3< T > operator- ( const Vector3< T > &  v)
related
Author
herzog 2005-07-19

Definition at line 61 of file Operators.hh.

template<class T >
Vector3< T > operator- ( const Vector3< T > &  vec,
const T &  scalar 
)
related

Substraction operator with scalar argument, returning new vector

Author
Ingo Thomsen, woelk, tested

Definition at line 200 of file Operators.hh.

References BIAS::Vector3< T >::Sub().

template<class T >
Vector3< T > operator- ( const T &  scalar,
const Vector3< T > &  vec 
)
related

Substraction operator with scalar argument, returning new vector

Author
woelk, tested

Definition at line 209 of file Operators.hh.

References BIAS::Vector3< T >::Mult().

template<class T >
Vector3< T > operator- ( const Vector3< T > &  vec,
const Vector3< T > &  argvec 
)
related

sub operator for two Vectors, returning new vector

Author
Ingo Thomsen, tested

Definition at line 448 of file Operators.hh.

References BIAS::Vector3< T >::Sub().

template<class T >
Vector3< T > & operator-= ( Vector3< T > &  vec,
const T &  scalar 
)
related

Substraction operator with scalar argument

Author
Ingo Thomsen tested

Definition at line 771 of file Vector3.hh.

References BIAS::Vector3< T >::SubIP().

template<class T >
Vector3< T > & operator-= ( Vector3< T > &  vec,
const Vector3< T > &  argvec 
)
related

sub operator for two Vectors

Author
Ingo Thomsen, tested

Definition at line 780 of file Vector3.hh.

References BIAS::Vector3< T >::SubIP().

template<class T >
Vector3< T > operator/ ( const Vector3< T > &  vec,
const T &  scalar 
)
related

Division operator with scalar argument, returning new vector

Author
Ingo Thomsen, tested

Definition at line 221 of file Operators.hh.

References BIAS::Vector3< T >::Divide().

template<class T >
Vector3< T > & operator/= ( Vector3< T > &  vec,
const T &  scalar 
)
related

Division operator with scalar argument

Author
Ingo Thomsen tested

Definition at line 791 of file Vector3.hh.

References BIAS::Vector3< T >::DivideIP().

template<class T >
bool operator< ( const Vector3< T > &  a,
const Vector3< T > &  b 
)
related
Author
Dennis Herzog, 2005-07-27

Definition at line 386 of file Operators.hh.

template<class T>
std::ostream & operator<< ( std::ostream &  os,
const BIAS::Vector3< unsigned char > &  vec 
)
related

Output with streams specialization for numerical display of unsigned char instead of alphabetically. fout format should be consistent with template implementation and Vector<>

Todo:
refactor into parameterized Print class member method
Author
Jan Woetzel

Definition at line 809 of file Vector3.hh.

References BIAS::IsConsoleStream().

template<class T >
std::ostream & operator<< ( std::ostream &  os,
const BIAS::Vector3< T > &  vec 
)
related

Output with streams. Usese different format for cout,cerr and other ostreasm to be consistenv with Vector<> but have pretty display in console.

Author
Jan Woetzel, JMF (08/08/2002)

Definition at line 855 of file Vector3.hh.

References BIAS::IsConsoleStream().

template<class T >
bool operator<= ( const Vector3< T > &  a,
const Vector3< T > &  b 
)
related
Author
Dennis Herzog, 2005-07-27
Dennis Herzog, 2005-07-27
Dennis Herzog, 2005-07-27

Definition at line 380 of file Operators.hh.

template<class T >
bool operator> ( const Vector3< T > &  a,
const Vector3< T > &  b 
)
related
Author
Dennis Herzog, 2005-07-27

Definition at line 398 of file Operators.hh.

template<class T >
bool operator>= ( const Vector3< T > &  a,
const Vector3< T > &  b 
)
related
Author
Dennis Herzog, 2005-07-27

Definition at line 392 of file Operators.hh.

template<class T>
std::istream & operator>> ( std::istream &  is,
Vector3< unsigned char > &  vec 
)
related

Input with streams specialization for numerical display of unsigned char instead of alphebetically. fout format should be consistent with template implementation and Vector<>

Author
Jan Woetzel

Definition at line 886 of file Vector3.hh.

References BIAS::Vector3< T >::GetData().

template<class T >
std::istream & operator>> ( std::istream &  is,
Vector3< T > &  vec 
)
related

Input with streams.

Author
Jan Woetzel (03/01/2002)

Definition at line 934 of file Vector3.hh.

References BIAS::Vector3< T >::GetData().

Member Data Documentation

template<class T>
T BIAS::Vector3< T >::data_[VECTOR3_SIZE]
protected

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