Comment pouvez-vous visualiser un quaternion?


24

Lorsque je visualise une matrice de rotation tridimensionnelle ou une matrice de mise à l'échelle, je la visualise en trois axes.

Existe-t-il une manière similaire de visualiser un quaternion de rotation?


Ce n'est pas vraiment une visualisation, mais quelqu'un m'a dit une fois que "nombres complexes: 2 :: quaternions: 4"
coderanger

Réponses:


19

Il existe un livre complet de 600 pages sur "Visualizing Quaternions": http://books.google.ca/books?id=CoUB09xzme4C&lpg=PP1&ots=uEdJHsni9y&dq=Visualizing%20Quaternions&pg=PP1#v=onepage&q&f=false

Le livre est en fait assez bon, couvrant un large éventail de sujets. Il commence par une bonne introduction à l'algèbre linéaire liée au jeu, il parle des matrices et des vecteurs, de leurs défauts et des raisons pour lesquelles vous voudriez utiliser les Quaternions. Il explique ensuite ce qu'ils sont et comment les utiliser. Si vous êtes intéressé, vous voudrez peut-être le récupérer: http://www.amazon.com/Visualizing-Quaternions-Kaufmann-Interactive-Technology/dp/0120884003


1
+1 pour "Visualizing Quaternions", c'est un excellent livre,
faites-le

7
Bien qu'un bon livre, si ce lien se détériore, cette réponse sera complètement inutile. Je vous suggère de fournir également des informations dans votre réponse sur la façon de visualiser les quaternions.
MichaelHouse

10

L'une des méthodes de visualisation que j'aime est de représenter le quaternion (orientation dans l'espace 3D) comme vecteur ( composantes x, y, z ) + spin (rotation autour de ce vecteur, stockée dans la composante w ).

Si vous cherchez un visualiseur en ligne pour les quaternions, vous pouvez toujours utiliser wolframalpha:

http://www.wolframalpha.com/input/?i=quaternion%3A+0%2B2i-j-3k&lk=3

Jetez un oeil à la visualisation intitulée "rotation 3D correspondante" (le vecteur 3D + spin):

entrez la description de l'image ici

Je l'ai trouvé utile en travaillant avec des quaternions dans mon moteur 3D.


1
Réponse précise! De cette façon, les gens peuvent également comprendre le mécanisme SLERP car ils peuvent imaginer des quaternions sur une sphère 3D, tandis que le spin peut être vu comme le mouvement de rotation scalaire par ce vecteur (devinez que c'est quelque chose de similaire à ce que certains mathématiciens appellent un rotor -> géométriquegebra. net / quaternions.html ).
teodron

7

Je visualise mes quaternions comme des vecteurs tridimensionnels (direction + longueur) avec un peu sur le côté pour pouvoir montrer la rotation le long de l'axe du vecteur.

C'est une façon courante de visualiser le vecteur de rotation en physique, mais le nom m'échappe.


3
Rotation angle-axe?
CiscoIPPhone

4

Vous n'avez pas nécessairement besoin d'une autre technique de visualisation pour les quaternions et les matrices.

Lorsque vous visualisez votre matrice de rotation comme le gizmo 3 axes, ce que vous visualisez vraiment est une orientation. Étant donné que le quaternion représente également une orientation, envisagez de continuer à utiliser votre gizmo 3 axes comme objet de visualisation de l'œil de votre esprit.

Rarement, pour les quaternions ou les matrices, avez-vous besoin de relier les valeurs réelles des composants dans votre visualisation, donc juste parce que les valeurs des composants du quaternion ne se rapportent pas à votre gizmo 3 axes ne signifie pas qu'il ne peut pas être utilisé pour la visualisation fins.


2

Vous pouvez, mais cela devient difficile. Au lieu de trois axes de rotation séparés, ou de trois cardans qui se déplacent chacun indépendamment un par un, vous devez représenter un quaternion comme une description de l'angle de rotation tridimensionnel complet et la magnitude à la fois comme une seule description de la traduction entière .

http://en.wikipedia.org/wiki/Quaternion_rotation

Les quaternions ne sont certainement pas un domaine sur lequel je suis solide, mais cette page wiki contient des informations décentes. Wikipédia parle de rotations sur une hypersphère, cependant, devient un peu déroutant. Bonne chance!


2

Comme vous le savez, le Quaternion est basé sur des nombres complexes et représente la rotation de la sphère 4D en dimension 4D. Vous ne pouvez donc pas le visualiser «tel quel». Je vois que tu le sais aussi. Et un et un seul choix sera la visualisation du résultat de la rotation. Par exemple, résultat de la rotation de la base; Ou vous pouvez rendre la sphère 3D et la peindre en «température» de rotation en couches par chaque axe; Bonne chance!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.