![]() |
GLam Collection version 0.4 - | ACCUEIL - CLASSES - HIERARCHIE - MEMBRES - EXEMPLES |
Matrice 4 x 4. Plus de détails...
#include <XamMath3D.h>
Fonctions membres publiques | |
XamMatrix () | |
XamMatrix (double *matrix) | |
XamMatrix (XamPoint *pts3d, int axis=0) | |
XamMatrix (double m00, double m01, double m02, double m03, double m10, double m11, double m12, double m13, double m20, double m21, double m22, double m23, double m30, double m31, double m32, double m33, double factor=1.0) | |
string | text (const string name="", const string valueFormat="") const |
void | toIdentity () |
void | toTranslate (const XamPoint &point) |
void | toTranslate (double tx, double ty, double tz=0.0) |
void | toRotateX (double angle) |
void | toRotateY (double angle) |
void | toRotateZ (double angle) |
void | toRotate (double angle, const XamVector &v) |
void | toScale (double scale) |
void | toScale (double sx, double sy, double sz) |
double & | operator() (unsigned row, unsigned col) |
double | operator() (unsigned row, unsigned col) const |
double * | matrix () |
XamMatrix | operator* (double value) const |
XamMatrix & | operator*= (double value) |
XamVector | operator* (const XamVector &v) const |
XamMatrix | operator* (const XamMatrix &m) const |
XamMatrix & | operator*= (const XamMatrix &m) |
XamMatrix | operator! () const |
Matrice 4 x 4.
La classe XamMatrix modélise une matrice 4 x 4. Le constructeur par défaut crée une matrice identité.
La classe autorise les produits matrice-valeur, matrice-vecteur et matrice-matrice. L'opérateur ! permet de transposer la matrice. L'opérateur () permet un accès direct aux valeurs de la matrice en spécifiant un numéro de ligne 0..3 et un numéro de colonne 0..3.
La méthode text()
retourne une chaine contenant le nom spécifié par l'argument name suivi des valeurs du vecteur au format indiqué ("%+6.2f" par défaut).
XamMatrix::XamMatrix | ( | ) |
Constructeur par défaut, matrice identité.
XamMatrix::XamMatrix | ( | double * | matrix | ) |
Constructeur. matrix doit être un tableau de 16 valeurs réelles.
XamMatrix::XamMatrix | ( | XamPoint * | pts3d, | |
int | axis = 0 | |||
) |
Constructeur. pts3d doit être un tableau de 16 points. La matrice est initialsée avec les coordonnées x,y, ou z des points en fonction de la valeur de axis (respectivement 0,1 ou 2).
XamMatrix::XamMatrix | ( | double | m00, | |
double | m01, | |||
double | m02, | |||
double | m03, | |||
double | m10, | |||
double | m11, | |||
double | m12, | |||
double | m13, | |||
double | m20, | |||
double | m21, | |||
double | m22, | |||
double | m23, | |||
double | m30, | |||
double | m31, | |||
double | m32, | |||
double | m33, | |||
double | factor = 1.0 | |||
) |
Construction à partir de 16 valeurs et d'un facteur multiplicateur.
double* XamMatrix::matrix | ( | ) | [inline] |
Retourne la matrice sous forme d'un tableau de 16 valeurs.
void XamMatrix::toIdentity | ( | ) |
Matrice identité.
void XamMatrix::toRotate | ( | double | angle, | |
const XamVector & | v | |||
) |
Rotation autour du vecteur v (angle en degrés).
void XamMatrix::toRotateX | ( | double | angle | ) |
Rotation autour de 0X (angle en degrés).
void XamMatrix::toRotateY | ( | double | angle | ) |
Rotation autour de 0Y (angle en degrés).
void XamMatrix::toRotateZ | ( | double | angle | ) |
Rotation autour de 0Z (angle en degrés).
void XamMatrix::toScale | ( | double | sx, | |
double | sy, | |||
double | sz | |||
) |
Facteur d'échelle sx, sy, sz pour chacune des 3 directions X,Y,Z.
void XamMatrix::toScale | ( | double | scale | ) |
Facteur d'échelle scale pour les 3 directions X,Y,Z.
void XamMatrix::toTranslate | ( | double | tx, | |
double | ty, | |||
double | tz = 0.0 | |||
) |
Translation.
void XamMatrix::toTranslate | ( | const XamPoint & | point | ) |
Translation.