libalmath  1.14.5
 All Classes Namespaces Functions Variables
Public Member Functions | Public Attributes
AL::Math::Velocity6D Struct Reference

Create and play with a Velocity6D. More...

#include <alvelocity6d.h>

List of all members.

Public Member Functions

 Velocity6D ()
 Create a Velocity6D initialize with 0.0f.
 Velocity6D (float pInit)
 Create a Velocity6D initialize with the same float.
 Velocity6D (float pXd, float pYd, float pZd, float pWxd, float pWyd, float pWzd)
 Create a Velocity6D initialize with explicit value.
 Velocity6D (const std::vector< float > &pFloats)
 Create a Velocity6D with an std::vector.
Velocity6D operator+ (const Velocity6D &pVel2) const
 Overloading of operator + for Velocity6D.
Velocity6D operator- (const Velocity6D &pVel2) const
 Overloading of operator - for Velocity6D.
Velocity6D operator+ () const
 Overloading of operator + for Velocity6D.
Velocity6D operator- () const
 Overloading of operator - for Velocity6D.
Velocity6D operator* (const float pVal) const
 Overloading of operator * for Velocity6D.
Velocity6D operator/ (const float pVal) const
 Overloading of operator / for Velocity6D.
bool operator== (const Velocity6D &pVel2) const
 Overloading of operator == for Velocity6D.
bool operator!= (const Velocity6D &pVel2) const
 Overloading of operator != for Velocity6D.
Velocity6Doperator*= (const float pVal)
 Overloading of operator *= for Velocity6D.
Velocity6Doperator/= (const float pVal)
 Overloading of operator /= for Velocity6D.
bool isNear (const Velocity6D &pVel2, const float &pEpsilon=0.0001f) const
 Check if the actual Velocity6D is Near the one given in argument.
float norm () const
 Compute the norm of the actual Velocity6D:
Velocity6D normalize () const
 Normalize the actual Velocity6D:
std::vector< float > toVector () const
 Return the Velocity6D as a vector of float [xd, yd, zd, wxd, wyd, wzd].

Public Attributes

float xd
float yd
float zd
float wxd
float wyd
float wzd

Detailed Description

Create and play with a Velocity6D.

A Velocity6D is just defined by xd, yd, zd, wxd, wyd and wzd.

Definition at line 24 of file alvelocity6d.h.


Constructor & Destructor Documentation

Create a Velocity6D initialize with 0.0f.

$ \left[\begin{array}{c} xd \\ yd \\ zd \\ wxd \\ wyd \\ wzd \end{array}\right] = \left[\begin{array}{c} 0.0 \\ 0.0 \\ 0.0 \\ 0.0 \\ 0.0 \\ 0.0 \end{array}\right]$

AL::Math::Velocity6D::Velocity6D ( float  pInit) [explicit]

Create a Velocity6D initialize with the same float.

$ \left[\begin{array}{c} xd \\ yd \\ zd \\ wxd \\ wyd \\ wzd \end{array}\right] = \left[\begin{array}{c} pInit \\ pInit \\ pInit \\ pInit \\ pInit \\ pInit \end{array}\right]$

Parameters:
pInitthe float value for each member
AL::Math::Velocity6D::Velocity6D ( float  pXd,
float  pYd,
float  pZd,
float  pWxd,
float  pWyd,
float  pWzd 
)

Create a Velocity6D initialize with explicit value.

$ \left[\begin{array}{c} xd \\ yd \\ zd \\ wxd \\ wyd \\ wzd \end{array}\right] = \left[\begin{array}{c} pXd \\ pYd \\ pZd \\ pWxd \\ pWyd \\ pWzd \end{array}\right]$

Parameters:
pXdthe float value for xd
pYdthe float value for yd
pZdthe float value for zd
pWxdthe float value for wxd
pWydthe float value for wyd
pWzdthe float value for wzd
AL::Math::Velocity6D::Velocity6D ( const std::vector< float > &  pFloats)

Create a Velocity6D with an std::vector.

$ \left[\begin{array}{c} xd \\ yd \\ zd \\ wxd \\ wyd \\ wzd \end{array}\right] = \left[\begin{array}{c} pFloats[0] \\ pFloats[1] \\ pFloats[2] \\ pFloats[3] \\ pFloats[4] \\ pFloats[5] \end{array}\right]$

Parameters:
pFloatsAn std::vector<float> of size 6 for respectively:

xd, yd, zd, wxd, wyd and wzd


Member Function Documentation

bool AL::Math::Velocity6D::isNear ( const Velocity6D pVel2,
const float &  pEpsilon = 0.0001f 
) const

Check if the actual Velocity6D is Near the one given in argument.

Parameters:
pVel2the second Velocity6D
pEpsilonan optional epsilon distance
Returns:
true if the difference of each float of the two Velocity6D is less than pEpsilon
float AL::Math::Velocity6D::norm ( ) const

Compute the norm of the actual Velocity6D:

$\sqrt{xd^2 + yd^2 + zd^2 + wxd^2 + wyd^2 + wzd^2}$

Returns:
the float norm of the Velocity6D

Normalize the actual Velocity6D:

$ result = \frac{pVel}{norm(pVel)} $

Returns:
the Velocity6D normalized
bool AL::Math::Velocity6D::operator!= ( const Velocity6D pVel2) const

Overloading of operator != for Velocity6D.

Parameters:
pVel2the second Velocity6D.
Velocity6D AL::Math::Velocity6D::operator* ( const float  pVal) const

Overloading of operator * for Velocity6D.

Parameters:
pValthe float factor.
Velocity6D& AL::Math::Velocity6D::operator*= ( const float  pVal)

Overloading of operator *= for Velocity6D.

Parameters:
pValthe float factor.
Velocity6D AL::Math::Velocity6D::operator+ ( const Velocity6D pVel2) const

Overloading of operator + for Velocity6D.

Parameters:
pVel2the second Velocity6D
Velocity6D AL::Math::Velocity6D::operator+ ( ) const

Overloading of operator + for Velocity6D.

Velocity6D AL::Math::Velocity6D::operator- ( const Velocity6D pVel2) const

Overloading of operator - for Velocity6D.

Parameters:
pVel2the second Velocity6D
Velocity6D AL::Math::Velocity6D::operator- ( ) const

Overloading of operator - for Velocity6D.

Velocity6D AL::Math::Velocity6D::operator/ ( const float  pVal) const

Overloading of operator / for Velocity6D.

Parameters:
pValthe float factor.
Velocity6D& AL::Math::Velocity6D::operator/= ( const float  pVal)

Overloading of operator /= for Velocity6D.

Parameters:
pValthe float factor.
bool AL::Math::Velocity6D::operator== ( const Velocity6D pVel2) const

Overloading of operator == for Velocity6D.

Parameters:
pVel2the second Velocity6D.
std::vector<float> AL::Math::Velocity6D::toVector ( ) const

Return the Velocity6D as a vector of float [xd, yd, zd, wxd, wyd, wzd].


Member Data Documentation

Definition at line 32 of file alvelocity6d.h.

Definition at line 34 of file alvelocity6d.h.

Definition at line 36 of file alvelocity6d.h.

Definition at line 26 of file alvelocity6d.h.

Definition at line 28 of file alvelocity6d.h.

Definition at line 30 of file alvelocity6d.h.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Functions Variables