ARGoS  3
A parallel, multi-engine simulator for swarm robotics
argos::CQuaternion Class Reference

#include <quaternion.h>

List of all members.

Public Member Functions

 CQuaternion ()
 CQuaternion (const CQuaternion &c_quaternion)
 CQuaternion (Real f_real, Real f_img1, Real f_img2, Real f_img3)
 CQuaternion (const CRadians &c_radians, const CVector3 &c_vector3)
 CQuaternion (const CVector3 &c_vector1, const CVector3 &c_vector2)
Real GetW () const
Real GetX () const
Real GetY () const
Real GetZ () const
CQuaternion Conjugate () const
CQuaternion Inverse () const
Real Length () const
Real SquareLength () const
CQuaternionNormalize ()
CQuaternionFromAngleAxis (const CRadians &c_angle, const CVector3 &c_vector)
void ToAngleAxis (CRadians &c_angle, CVector3 &c_vector) const
CQuaternionFromEulerAngles (const CRadians &c_z_angle, const CRadians &c_y_angle, const CRadians &c_x_angle)
void ToEulerAngles (CRadians &c_z_angle, CRadians &c_y_angle, CRadians &c_x_angle) const
CQuaternionBetweenTwoVectors (const CVector3 &c_vector1, const CVector3 &c_vector2)
bool operator== (const CQuaternion &c_quaternion)
CQuaternionoperator= (const CQuaternion &c_quaternion)
CQuaternionoperator+= (const CQuaternion &c_quaternion)
CQuaternionoperator-= (const CQuaternion &c_quaternion)
CQuaternionoperator*= (const CQuaternion &c_quaternion)
CQuaternion operator+ (const CQuaternion &c_quaternion) const
CQuaternion operator- (const CQuaternion &c_quaternion) const
CQuaternion operator* (const CQuaternion &c_quaternion) const

Friends

std::ostream & operator<< (std::ostream &c_os, const CQuaternion &c_quaternion)
 Serializes the contents of the passed quaternion into a stream as Euler angles in the Z,Y,X format in degrees.
std::istream & operator>> (std::istream &c_is, CQuaternion &c_quaternion)
 Deserializes the contents of a stream and stores it into the passed quaternion.

Detailed Description

Definition at line 14 of file quaternion.h.


Constructor & Destructor Documentation

Definition at line 17 of file quaternion.h.

argos::CQuaternion::CQuaternion ( const CQuaternion c_quaternion) [inline]

Definition at line 24 of file quaternion.h.

argos::CQuaternion::CQuaternion ( Real  f_real,
Real  f_img1,
Real  f_img2,
Real  f_img3 
) [inline]

Definition at line 28 of file quaternion.h.

argos::CQuaternion::CQuaternion ( const CRadians c_radians,
const CVector3 c_vector3 
) [inline]

Definition at line 38 of file quaternion.h.

argos::CQuaternion::CQuaternion ( const CVector3 c_vector1,
const CVector3 c_vector2 
) [inline]

Definition at line 43 of file quaternion.h.


Member Function Documentation

CQuaternion& argos::CQuaternion::BetweenTwoVectors ( const CVector3 c_vector1,
const CVector3 c_vector2 
) [inline]

Definition at line 193 of file quaternion.h.

Definition at line 64 of file quaternion.h.

CQuaternion& argos::CQuaternion::FromAngleAxis ( const CRadians c_angle,
const CVector3 c_vector 
) [inline]

Definition at line 99 of file quaternion.h.

CQuaternion& argos::CQuaternion::FromEulerAngles ( const CRadians c_z_angle,
const CRadians c_y_angle,
const CRadians c_x_angle 
) [inline]

Definition at line 136 of file quaternion.h.

Real argos::CQuaternion::GetW ( ) const [inline]

Definition at line 48 of file quaternion.h.

Real argos::CQuaternion::GetX ( ) const [inline]

Definition at line 52 of file quaternion.h.

Real argos::CQuaternion::GetY ( ) const [inline]

Definition at line 56 of file quaternion.h.

Real argos::CQuaternion::GetZ ( ) const [inline]

Definition at line 60 of file quaternion.h.

Definition at line 71 of file quaternion.h.

Real argos::CQuaternion::Length ( ) const [inline]

Definition at line 78 of file quaternion.h.

Definition at line 90 of file quaternion.h.

CQuaternion argos::CQuaternion::operator* ( const CQuaternion c_quaternion) const [inline]

Definition at line 275 of file quaternion.h.

CQuaternion& argos::CQuaternion::operator*= ( const CQuaternion c_quaternion) [inline]

Definition at line 238 of file quaternion.h.

CQuaternion argos::CQuaternion::operator+ ( const CQuaternion c_quaternion) const [inline]

Definition at line 263 of file quaternion.h.

CQuaternion& argos::CQuaternion::operator+= ( const CQuaternion c_quaternion) [inline]

Definition at line 222 of file quaternion.h.

CQuaternion argos::CQuaternion::operator- ( const CQuaternion c_quaternion) const [inline]

Definition at line 269 of file quaternion.h.

CQuaternion& argos::CQuaternion::operator-= ( const CQuaternion c_quaternion) [inline]

Definition at line 230 of file quaternion.h.

CQuaternion& argos::CQuaternion::operator= ( const CQuaternion c_quaternion) [inline]

Definition at line 212 of file quaternion.h.

bool argos::CQuaternion::operator== ( const CQuaternion c_quaternion) [inline]

Definition at line 205 of file quaternion.h.

Definition at line 82 of file quaternion.h.

void argos::CQuaternion::ToAngleAxis ( CRadians c_angle,
CVector3 c_vector 
) const [inline]

Definition at line 116 of file quaternion.h.

void argos::CQuaternion::ToEulerAngles ( CRadians c_z_angle,
CRadians c_y_angle,
CRadians c_x_angle 
) const [inline]

Definition at line 145 of file quaternion.h.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  c_os,
const CQuaternion c_quaternion 
) [friend]

Serializes the contents of the passed quaternion into a stream as Euler angles in the Z,Y,X format in degrees.

Parameters:
c_osThe stream.
c_quaternionThe quaternion.
Returns:
The new state of the stream.

Definition at line 288 of file quaternion.h.

std::istream& operator>> ( std::istream &  c_is,
CQuaternion c_quaternion 
) [friend]

Deserializes the contents of a stream and stores it into the passed quaternion.

This method assumes Euler angles in Z,Y,X format and given in degrees.

Parameters:
c_isThe stream.
c_quaternionThe quaternion.
Returns:
The new state of the stream.

Definition at line 304 of file quaternion.h.


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