Fonctions membres publiques | Fonctions membres publiques statiques

Référence de la classe Castor::Quaternion

Représentation d'un quaternion. Plus de détails...

Graphe d'héritage de Castor::Quaternion:
Graphe de collaboration de Castor::Quaternion:

Liste de tous les membres

Fonctions membres publiques

 Quaternion ()
 Constructeur.
 Quaternion (Quaternion const &p_q)
 Constructeur par copie.
 Quaternion (Quaternion &&p_q)
 Constructeur par déplacement.
 Quaternion (Point4r const &p_ptPoint)
 Constructeur à partir d'un point à 4 valeurs.
 Quaternion (Point3r const &p_vector, Angle const &p_angle)
 Constructeur à partir d'un axe et d'un angle.
 Quaternion (real p_w, real p_x, real p_y, real p_z)
 Constructeur spécifié.
virtual ~Quaternion ()
 Destructeur.
Quaternionoperator= (Quaternion const &p_q)
 Opérateur d'affectation par copie.
Quaternionoperator= (Quaternion &&p_q)
 Opérateur d'affectation par déplacement.
Quaternionoperator+= (Quaternion const &p_q)
 Opérateur d'affectation par addition.
Quaternionoperator-= (Quaternion const &p_q)
 Opérateur d'affectation par soustraction.
Quaternionoperator*= (Quaternion const &p_q)
 Opérateur d'affectation par multiplication.
Quaternionoperator*= (real p_fScalar)
 Opérateur d'affectation par multiplication.
void Transform (Point3r const &p_vector, Point3r &p_ptResult)
 Transforme un vecteur et donne le résultat.
void ToRotationMatrix (float *p_matrix) const
 Remplit une matrice de rotation à partir de ce Quaternion.
void FromRotationMatrix (float const *p_matrix)
 Met à jour ce Quaternion à partir d'une matrice de rotation.
void ToRotationMatrix (Matrix4x4f &p_matrix) const
 Remplit une matrice de rotation à partir de ce Quaternion.
void ToRotationMatrix (double *p_matrix) const
 Remplit une matrice de rotation à partir de ce Quaternion.
void FromRotationMatrix (double const *p_matrix)
 Met à jour ce Quaternion à partir d'une matrice de rotation.
void ToRotationMatrix (Matrix4x4d &p_matrix) const
 Remplit une matrice de rotation à partir de ce Quaternion.
void FromRotationMatrix (Matrix4x4r const &p_matrix)
 Met à jour ce Quaternion à partir d'une matrice de rotation.
void FromAxisAngle (Point3r const &p_vector, Angle const &p_angle)
 Met à jour ce Quaternion à partir d'un axe et d'un angle.
void ToAxisAngle (Point3r &p_vector, Angle &p_angle) const
 Calcule l'axe et l'angle de ce Quaternion.
Angle GetYaw () const
 Récupère la valeur de la rotation sur l'axe Y.
Angle GetPitch () const
 Récupère la valeur de la rotation sur l'axe Y.
Angle GetRoll () const
 Récupère la valeur de la rotation sur l'axe Y.
void Conjugate ()
 Définit ce Quaternion à son conjugué.
Quaternion GetConjugate ()
 Récupère le conjugué de ce Quaternion.
real GetMagnitude ()
 Récupère la magnitude de ce Quaternion.
Quaternion Slerp (Quaternion const &p_target, real p_percent, bool p_shortestPath)
 Calcule l'interpolation entre ce quaternion et un autre.

Fonctions membres publiques statiques

static Quaternion Identity ()
 Récupère le Quaternion identité.
static Quaternion Null ()
 Récupère le Quaternion nul.

Description détaillée

Représentation d'un quaternion.

Auteur:
Sylvain DOREMUS
Version:
0.1.0.0
Date:
09/02/2010
Remarques:
Un quaternion se compose d'un axe et d'un angle

Documentation des constructeurs et destructeur

Castor::Quaternion::Quaternion (  ) 

Constructeur.

Castor::Quaternion::Quaternion ( Quaternion const &  p_q  ) 

Constructeur par copie.

Paramètres:
[in] p_q L'objet Quaternion à copier
Castor::Quaternion::Quaternion ( Quaternion &&  p_q  ) 

Constructeur par déplacement.

Paramètres:
[in] p_q L'objet Quaternion à déplacer
Castor::Quaternion::Quaternion ( Point4r const &  p_ptPoint  ) 

Constructeur à partir d'un point à 4 valeurs.

Paramètres:
[in] p_ptPoint Un point contenant les 4 valeurs d'un quaternion
Castor::Quaternion::Quaternion ( Point3r const &  p_vector,
Angle const &  p_angle 
) [inline]

Constructeur à partir d'un axe et d'un angle.

Paramètres:
[in] p_vector Un point contenant les valeurs de l'axe
[in] p_angle L'angle

Voici le graphe d'appel pour cette fonction :

Castor::Quaternion::Quaternion ( real  p_w,
real  p_x,
real  p_y,
real  p_z 
) [inline]

Constructeur spécifié.

Remarques:
Notez que w est la première valeur à donner
Paramètres:
[in] p_w,p_x,p_y,p_z Les 4 valeurs

Voici le graphe d'appel pour cette fonction :

virtual Castor::Quaternion::~Quaternion (  )  [virtual]

Destructeur.


Documentation des fonctions membres

void Castor::Quaternion::Conjugate (  ) 

Définit ce Quaternion à son conjugué.

void Castor::Quaternion::FromAxisAngle ( Point3r const &  p_vector,
Angle const &  p_angle 
)

Met à jour ce Quaternion à partir d'un axe et d'un angle.

Paramètres:
[in] p_vector L'axe
[in] p_angle L'angle

Voici le graphe d'appel pour cette fonction :

void Castor::Quaternion::FromRotationMatrix ( float const *  p_matrix  ) 

Met à jour ce Quaternion à partir d'une matrice de rotation.

Paramètres:
[in] p_matrix La matrice de rotation

Voici le graphe d'appel pour cette fonction :

void Castor::Quaternion::FromRotationMatrix ( double const *  p_matrix  ) 

Met à jour ce Quaternion à partir d'une matrice de rotation.

Paramètres:
[in] p_matrix La matrice de rotation
void Castor::Quaternion::FromRotationMatrix ( Matrix4x4r const &  p_matrix  )  [inline]

Met à jour ce Quaternion à partir d'une matrice de rotation.

Paramètres:
[in] p_matrix La matrice de rotation

Voici le graphe d'appel pour cette fonction :

Quaternion Castor::Quaternion::GetConjugate (  ) 

Récupère le conjugué de ce Quaternion.

Renvoie:
Le conjugué
real Castor::Quaternion::GetMagnitude (  ) 

Récupère la magnitude de ce Quaternion.

Renvoie:
La magnitude
Angle Castor::Quaternion::GetPitch (  )  const

Récupère la valeur de la rotation sur l'axe Y.

Renvoie:
La valeur de la rotation autour de l'axe Y
Angle Castor::Quaternion::GetRoll (  )  const

Récupère la valeur de la rotation sur l'axe Y.

Renvoie:
La valeur de la rotation autour de l'axe Y
Angle Castor::Quaternion::GetYaw (  )  const

Récupère la valeur de la rotation sur l'axe Y.

Renvoie:
La valeur de la rotation autour de l'axe Y
static Quaternion Castor::Quaternion::Identity (  )  [static]

Récupère le Quaternion identité.

static Quaternion Castor::Quaternion::Null (  )  [static]

Récupère le Quaternion nul.

Quaternion& Castor::Quaternion::operator*= ( Quaternion const &  p_q  ) 

Opérateur d'affectation par multiplication.

Paramètres:
[in] p_q L'objet Quaternion à multiplier
Renvoie:
Une référence sur cet objet Quaternion
Quaternion& Castor::Quaternion::operator*= ( real  p_fScalar  ) 

Opérateur d'affectation par multiplication.

Paramètres:
[in] p_fScalar Le scalaire à multiplier
Renvoie:
Une référence sur cet objet Quaternion
Quaternion& Castor::Quaternion::operator+= ( Quaternion const &  p_q  ) 

Opérateur d'affectation par addition.

Paramètres:
[in] p_q L'objet Quaternion à ajouter
Renvoie:
Une référence sur cet objet Quaternion
Quaternion& Castor::Quaternion::operator-= ( Quaternion const &  p_q  ) 

Opérateur d'affectation par soustraction.

Paramètres:
[in] p_q L'objet Quaternion à soustraire
Renvoie:
Une référence sur cet objet Quaternion
Quaternion& Castor::Quaternion::operator= ( Quaternion &&  p_q  ) 

Opérateur d'affectation par déplacement.

Paramètres:
[in] p_q L'objet Quaternion à déplacer
Renvoie:
Une référence sur cet objet Quaternion
Quaternion& Castor::Quaternion::operator= ( Quaternion const &  p_q  ) 

Opérateur d'affectation par copie.

Paramètres:
[in] p_q L'objet Quaternion à copier
Renvoie:
Une référence sur cet objet Quaternion
Quaternion Castor::Quaternion::Slerp ( Quaternion const &  p_target,
real  p_percent,
bool  p_shortestPath 
)

Calcule l'interpolation entre ce quaternion et un autre.

Remarques:
Slerp = q1 ((q1 ^ -1) q2) ^ t;
Paramètres:
[in] p_target q2
[in] p_percent t
[in] p_shortestPath Dit si on inverse la rotation quand q1.q2 < 0
Renvoie:
Le résultat de l'interpolation
void Castor::Quaternion::ToAxisAngle ( Point3r p_vector,
Angle p_angle 
) const

Calcule l'axe et l'angle de ce Quaternion.

Paramètres:
[out] p_vector Reçoit l'axe
[out] p_angle Reçoit l'angle
void Castor::Quaternion::ToRotationMatrix ( Matrix4x4d p_matrix  )  const [inline]

Remplit une matrice de rotation à partir de ce Quaternion.

Paramètres:
[out] p_matrix La matrice à remplir

Voici le graphe d'appel pour cette fonction :

void Castor::Quaternion::ToRotationMatrix ( double *  p_matrix  )  const

Remplit une matrice de rotation à partir de ce Quaternion.

Paramètres:
[out] p_matrix La matrice à remplir
void Castor::Quaternion::ToRotationMatrix ( Matrix4x4f p_matrix  )  const [inline]

Remplit une matrice de rotation à partir de ce Quaternion.

Paramètres:
[out] p_matrix La matrice à remplir

Voici le graphe d'appel pour cette fonction :

void Castor::Quaternion::ToRotationMatrix ( float *  p_matrix  )  const

Remplit une matrice de rotation à partir de ce Quaternion.

Paramètres:
[out] p_matrix La matrice à remplir

Voici le graphe d'appel pour cette fonction :

void Castor::Quaternion::Transform ( Point3r const &  p_vector,
Point3r p_ptResult 
)

Transforme un vecteur et donne le résultat.

Paramètres:
[in] p_vector Le vecteur à transformer
[out] p_ptResult Reçoit le résultat

La documentation de cette classe a été générée à partir du fichier suivant :
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définition de type Énumérations Valeurs énumérées Amis Macros