PDA

Voir la version complète : PAPAAAAAAAA !!!! les Quaternion c'est quoi ???


Thelvyn
15/09/2005, 10h18
héhé le titre dit tout :)

Laeti²x
15/09/2005, 10h44
ahah :)

et bien mon fils, *voix de gorge*
"un Quaternion est un Corps Complexe au dessus de C"
(C, l'ensemble des Complexes)

Ah me dit tu ... ca t'avance pas des masses...
Bon alors un Quaternion c'est le "i" (imaginaire) des Complexes avec ses copains "j" et "k" :
a*i + b*j + c*k + d.

Mais encore....
Un quaternion contient un Axe et un Angle. L'axe de rotation et l'angle.
Si je ne m'abuse Axe = resultat d'un cross product, Angle = resultat d'un Dot. Je peux me tromper mais c'est l'esprit...

Donc quand avec OpenGL tu fais (ptetre tu le fais pas hein...):
GlRotatef(1,0,0,x);
GlRotatef(0,1,0,y);
GlRotatef(0,0,1,z);
tu peux faire :
GlRotatef(axe0,axe1,axe2,angle);
(Ca fait longtemps que j'ai pas GLisé je me rappelle plus la syntaxe...)

Et a quoi ca sert ?
Et bien un quaternion c'est trés pratique, ca permet de faire des rotations 'unifiees' (et uniques) genre tu fais:
(une rot de 180 en X) + (une rot de 180 en z) ca donne (une rot de 180 en y)
-> Deux facons de representer la chose en angles d'euler et 1 seule en quaternions. C'est pour ca que 3DSMAX te donne un angle différent de celui que tu as défini...

Il existe 2 petites formules faciles pour passer du quat a l'euler et vice versa mais je ne les connais pas par coeur.

Vala, tu peux aller jouer fiston, j'espére que ton vieux pére n'est pas trop "hasbeen" :)

Thelvyn
15/09/2005, 12h40
Et ca s'utilise comment papa ?

NewbiZ
15/09/2005, 13h14
"un Quaternion est un Corps Complexe au dessus de C"
(C, l'ensemble des Complexes)Tout a fait ! un quaternion est un hypercomplexe à 3 imaginaires et 4 scalaires. Et pour info le corps des quaternions s'apelle H :) attention ce corps est associatif mais pas commutatif, amuses toi bien pour tes calculs :p
Bon alors un Quaternion c'est le "i" (imaginaire) des Complexes avec ses copains "j" et "k" :
a*i + b*j + c*k + d.Presque, mais par convention on note les scalaires par ordre alphabétique, et les imaginaires suivent (comme pour les complexes avec c = a + bi) donc on notera plutôt q = a + bi + cj + dk, ça n'a pas grande importance mais si on commence à changer le nom des variables ... :)
Pour ce qui est de l'agèbre quaternionaire, je ne pense pas qu'il soit utile de la développer ici, vu que cela demande quelques notions de math assez poussées.
Et a quoi ca sert ?
Et bien un quaternion c'est trés pratique, ca permet de faire des rotations 'unifiees' (et uniques) genre tu fais:
(une rot de 180 en X) + (une rot de 180 en z) ca donne (une rot de 180 en y) dur de trouver meilleur exemple !

Thelvyn
15/09/2005, 17h38
c quel niveau ? pour voir combien je dois encore attendre :)

CodyX
15/09/2005, 17h58
Les quats sa sert à eviter les gimbal locks :00000023:

Thelvyn
15/09/2005, 20h20
les ... les what ??? le truc des camera qui pointent vers le haut ? c ca ou autre chose ?

CodyX
15/09/2005, 21h18
Tout est là:

http://www.futura-sciences.com/communiquer/n/a/newsgroup.php/t-6659-gimbal-lock.html
:00000023:

Thelvyn
15/09/2005, 21h44
dacodac :) c'est ce que je pensais

nunuxxx
16/09/2005, 01h24
les ... les what ??? le truc des camera qui pointent vers le haut ? c ca ou autre chose ?

Exact, on utilise les quaternion dans les mouvement de cameras...

minirop
17/09/2005, 22h56
c quel niveau ? pour voir combien je dois encore attendre :)
pour continuer, on apprends les quat en cours ?

asmanur
18/09/2005, 07h55
Au fait les profs ils connaissent les quaternions ?
Parce qu'en 3e j'avais sorti qu'il existait un autre ensemble au dessus de R (en plus des complexes) et le prof ne connaissait pas. J'étais passé pour un con, et maintenant j'ai bien la preuve que ca existe. C'est à leur programme ?

Sinon j'ai pas trop compris vos trucs avec les caméras (faut m'excuser je suis qu'en seconde ^^), ca consiste en quoi ?

Thelvyn
18/09/2005, 10h22
pour continuer, on apprends les quat en cours ?
pour apprendre les "quat" en cours

CodyX
18/09/2005, 14h44
asmanur tu as lu le liens que j'ai posté ??

qwedom
18/09/2005, 18h10
il existait un autre ensemble au dessus de R (en plus des complexes)
On "crée" les hypercomplexes de la mêmes manière qu'on a C à partir de R, la généralisation de cette construction, ou construction de Cayley-Dickson (il me semble ^^), permet de créer une infinité d'algèbres identiques, et ce juste en l'appliquant à l'algèbre inférieur. Ainsi, on a les quaternions (notés H), les octonions (notés O), les sédénions (notés S),... mais il faut que chaque fois que l'on a un nouveau rang, on perd une propriété (la comparaison pour les complexes, la commutativité pour les quaternions, l'associativité pour les octonions,...). En plus, à chaque fois, on multiplie par deux le nombre de dimensions (complexes : 2, quaternions : 4, octonions : 8, sédénions : 16,...); voila pourquoi, par exemple, les complexes ne peuvent pas être étendus à la dimension 3.

Ey-Lord
19/09/2005, 00h00
J'avais souvent entendu ce "nom" sans jamais chercher ce que c'était , bah voila, je vois en gros ce quoi il retourne :)
Jolie réponse de Laeti²x , même moi j'ai réussi a ( a peu prés ) comprendre la chose :D

dev
20/09/2005, 15h46
Quelques liens pour les quaternions et leur utilité

http://www.gamedev.net/reference/articles/article1997.asp
http://membres.lycos.fr/javamus/articles/mqfaq.html
http://www.enib.fr/~nedelec/docs/poly/rv_transfo.pdf
http://www.pilotlist.org/zahar/lacet.htm
http://www.irit.fr/recherches/SIRV/Personnel/gaildrat/PagesEnseignement/PagesInfographie/Quaternions/quaternions7.1.htm

Thelvyn
20/09/2005, 18h30
tres tres bien les liens apart "lacet" ... c'est un peu HS :D

remram44
20/09/2005, 18h39
En gros, si je veux faire un objet qui tourne dans l'espace (sans haut ni bas), il faut utiliser des quaternions, sinon avec les angles d'euler il y aurait du gimbal lock... Admettons.
Ya pas un moyen plus simple pour tourner un objet vers un autre sans gimbal lock (= enroulement autour de Y si X est loin de 0) ? Je sais pas si vous avez bien compris...

dev
21/09/2005, 09h04
tres tres bien les liens apart "lacet" ... c'est un peu HS :D

En fait c'est pour expliquer ce qu'est le tangage roulis et lacet...

Thelvyn
21/09/2005, 09h59
En fait c'est pour expliquer ce qu'est le tangage roulis et lacet...
hein ???

dev
21/09/2005, 11h47
Au début je ne savais pas ce que c'était... Mais je me suis peut être trompé de lien... :D

CodyX
21/09/2005, 18h42
Non non sa peut servir si tu fais un simulateur de vol :00000023:

NewbiZ
24/09/2005, 16h37
pour continuer, on apprends les quat en cours ?Bien sur, en faculté tu peux l'apprendre dans ta troisième année de licence, si tu choisis des cours d'algèbre.
Sinon, pour tourner des objets dans ton jeu, tu n'es bien sur pas obligé d'utiliser les quaternions. C'est juste que c'est assez simple à manipuler, pour peu que tu aies un niveau de math suffisant.
En gros les choix possibles sont :
- Les quaternions : demande un niveau de math poussé mais très pratiques à utiliser
- Les coordonnées sphériques : assez simples à utiliser. 2 angles, 1 rayon. La meilleure alternative aux quaternions.
- Les coordonnées cylindriques : pratique pour des rotations horizontales, ce n'est qu'une petite extension des coordonnées polaires

asmanur
24/09/2005, 17h24
Ya-t-il moyen d'avoir des sources qui utilisent les quaternions, parce que j'ai quand meme un peu de mal à me représenter (bon d'accord c'est en 4D mais bon...)

CodyX
24/09/2005, 17h51
Sur nehe il y a une classe camera qui utilise les quats.
:00000023:

Thelvyn
24/09/2005, 21h08
Bien sur, en faculté tu peux l'apprendre dans ta troisième année de licence, si tu choisis des cours d'algèbre
sniff ... je crois que je vais essayer de comprendre tout seul ^^
pas envie d'attendre ( je ne suis qu'en L1 :()