Jump to content
ossosso

Euler - Quaternion

Recommended Posts

Salve,

scusate qualcuno potrebbe aiutarmi a capire il sistema rotazionale Quaternion come funziona in teoria?

Le uniche informazioni che riesco a trovare in merito al quaternione sono in ambito matematico avanzato e non riesco a capirlo. Mi interessa capirlo solo per l'ambito 3d (in particolare in Maya).

Grazie mille.

Share this post


Link to post
Share on other sites

ciao!! il fatto che da quello che ne so il quaternione è matematica avanzata!! Comunque da quello che ho capito è un insieme più o meno complesso di trasformazioni matriciali collegate tra loro...

Share this post


Link to post
Share on other sites

Ho appena fatto una googlata e non mi sembra affatto "matematica avanzata" è un semplice spazio in 4 dimensioni, ha i quattro vettori base (1,0,0,0), (0,1,0,0),(0,0,1,0),(0,0,0,1) invece che i soliti tre XYZ.. In teoria basta prendere un buon libro di geometria universitaria!

Ma è inutile che cerchi una soluzione immaginaria, la mente umana è capace di pensare solo in 3 dimensioni, diciamo che abbiamo adattato la matematica alla nostra visione del mondo e senza dubbio è la più pratica, ma in geometria è possibile creare spazi vettoriali di N infiniti vettori, ed è possibile calcolare in essi perpendicolarità, distanza e tante altre cose semplicemente ed unicamente tramite calcoli e matrici.

A quanto ho letto su wikipedia appunto è uno spazio in R4, dove una delle basi rappresenta un angolo, e le altre 3 basi rappresentano i nostri amati vettori XYZ... in pratica si possono fare calcoli nello spazio del quaternion, prendere la parte vettoriale e trasferirla in R3 ottenendo le nostre coordinate... Sta scritto che ha utilità per la computer grafica ma non ne spiega il motivo però -,-


Edited by DoOmgRaVE

Share this post


Link to post
Share on other sites

Dunque, le informazioni che sono riuscito a reperire io sono le seguenti:

-In pratica il sistema Quaternion (così come l'Euler) in grafica 3D descrive quelle che sono le coordinate della rotazione di un corpo. Mentre l'Euler utilizza 3 valori angolari ognuno dei quali riferito ai tre assi di rotazion XYZ, il Quaternion è composto da 4 valori: i primi 3 desrivono le coordinate del vettore nello spazio tridimensionale XYZ, mi immagino quindi un sistema cartesiano a 3 dimensioni dalla cui origine parte una retta che è il nostro vettore, questo vettore è l'asse che passa attraverso l'oggetto 3d e a seconda di come è posizionato nello spazio ne descrive la rotazione dell'oggetto lungo solo due ASSI, per la rotazione lungo il terzo asse c'è bisogno di un quarto valore (che appunto sarebbe la quarta variabile del sistema quaternion) espressa in gradi, che nientaltro non è che la rotazione dell'oggetto attorno al proprio asse (vettore).

L'esempio che ho in mente è quello di una Camera con Target: in pratica traslando il target riesco anche a ruotare la camera, per cui la linea che parte dalla camera fino al target è il nostro vettore, di cui il Target ne identifica le 3 coordinate nello spazio XYZ (che sarebbero i primi tre valori del sistema Quaternion); poi c'è il quarto valore espresso in angoli che è la rotazione della camera attorno al proprio asse (Roll).

Attraverso questi 4 valori so come è ruotato un oggetto nello spazio 3d.

Uno schizzetto veloce per capirci:

http://www.ossosso.com/public/scambio/quaternion_euler.jpg

Questo immaginario in alcune spiegazioni trova riscontro, mentre in altre no...

Spero di essermi spiegato il meglio possibile, e magari di ricevere conferma, oppure no :)

Grazie.

Share this post


Link to post
Share on other sites

mmm su wikipedia era molto più matematica la cosa,non è propriamente uno spazio di R4, ma con delle semplificazioni che lo portano su R3 (la limitazione è il fatto che l'angolo sia fissato al vettore XYZ e non è una dimensione)..

Cmq è cosi', il tuo esempio è giusto, provo a farne uno ankio!

Immaginando che l'oggetto da ruotare sia lo gnak di treddi e che l'abbiamo impalato con un vettore che si infila nel c.lo e gli sfora la testa:

Ruoto lo gnak, e quindi ruota il vettore, sapendo la posizione del vettore so dove si trovano testa e piedi, con l'ultimo valore infine so di quanto è ruotato su se stesso intorno all'asse impalatore.

Share this post


Link to post
Share on other sites

In maya, euler quaternion interpolation, serve per risolvere i problemi di gimbal lock, nel tuo disegno hai espresso proprio una parte del problema.

Qui c'è un plugin, ma anche una spiegazione del perchè si verfica ciò

Qui

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...