Changement de repere et quaternions
Fermé
ebousquie
Messages postés
40
Date d'inscription
lundi 12 mai 2008
Statut
Membre
Dernière intervention
28 avril 2009
-
28 avril 2009 à 10:55
feadin91 Messages postés 257 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 28 avril 2010 - 28 avril 2009 à 11:25
feadin91 Messages postés 257 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 28 avril 2010 - 28 avril 2009 à 11:25
A voir également:
- Changement de repere et quaternions
- Changer de dns - Guide
- Changement d'écriture - Guide
- Changement carte graphique - Guide
- Changement clavier azerty - Guide
- Prix changement batterie macbook pro - Accueil - Guide composants
7 réponses
feadin91
Messages postés
257
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
28 avril 2010
89
28 avril 2009 à 11:01
28 avril 2009 à 11:01
Wahou, c'est du lourd ça!
Tu n'as pas copié la fonction inverse(quaternion);
Le problème vient peut-être de là?
Tu as des warning lors de la compilation? (moi j'en ignore certains XD j'ai même pas honte)
Tu n'as pas copié la fonction inverse(quaternion);
Le problème vient peut-être de là?
Tu as des warning lors de la compilation? (moi j'en ignore certains XD j'ai même pas honte)
ebousquie
Messages postés
40
Date d'inscription
lundi 12 mai 2008
Statut
Membre
Dernière intervention
28 avril 2009
28 avril 2009 à 11:02
28 avril 2009 à 11:02
ouais, merci... il semble que l'inversion soit bonne... d'ailleurs autant pour moi c'est pas inversion c'est complémentation (on prend le conjugué)
feadin91
Messages postés
257
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
28 avril 2010
89
28 avril 2009 à 11:04
28 avril 2009 à 11:04
Tu peux la mettre ici aussi stp? (on sait jamais...) avec un commentaire bref sur son algo si possible
EDIT :
trans = P-Pref
Qtrans = (0,trans.x, trans.y, trans.z) //quaternion obtenu à partir du veteur trans.
Qtrans = Oref_inverse * Qtrans * Oref
//OBTENTION DE LA TRANSLATION
trans = (Qtrans.i, Qtrans.j, Qtrans.k) //vecteur des 3 composantes complexes de Qtrans
Il n'y a pas une petite redondance? Si j'ai bien compris, tu calcule trans, tu "colle" ses paramètres dans Qtrans, puis tu "colle" les paramètres de Qtrans dans trans?
C'est normal?
EDIT :
trans = P-Pref
Qtrans = (0,trans.x, trans.y, trans.z) //quaternion obtenu à partir du veteur trans.
Qtrans = Oref_inverse * Qtrans * Oref
//OBTENTION DE LA TRANSLATION
trans = (Qtrans.i, Qtrans.j, Qtrans.k) //vecteur des 3 composantes complexes de Qtrans
Il n'y a pas une petite redondance? Si j'ai bien compris, tu calcule trans, tu "colle" ses paramètres dans Qtrans, puis tu "colle" les paramètres de Qtrans dans trans?
C'est normal?
ebousquie
Messages postés
40
Date d'inscription
lundi 12 mai 2008
Statut
Membre
Dernière intervention
28 avril 2009
28 avril 2009 à 11:09
28 avril 2009 à 11:09
//Conjugué
inline Quaternion& Quaternion::complement()
{
a = a;
b = -b;
c = -c;
d = -d;
return *this;
}
// Inversion
inline Quaternion& Quaternion::invert()
{
double norm = a*a+b*b+c*c+d*d;
complement();
*this /= norm;
return *this;
}
// dans le main:
Remplacer Oref_inverse par Oref_complement
puis calcul: Qtrans = Oref_complement * Qtrans * (Oref_complement)^-1
inline Quaternion& Quaternion::complement()
{
a = a;
b = -b;
c = -c;
d = -d;
return *this;
}
// Inversion
inline Quaternion& Quaternion::invert()
{
double norm = a*a+b*b+c*c+d*d;
complement();
*this /= norm;
return *this;
}
// dans le main:
Remplacer Oref_inverse par Oref_complement
puis calcul: Qtrans = Oref_complement * Qtrans * (Oref_complement)^-1
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
feadin91
Messages postés
257
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
28 avril 2010
89
28 avril 2009 à 11:12
28 avril 2009 à 11:12
Et ça fonctionne avec tes modifications?
Sinon, bah je vois pas du tout (je suis un peu paumé :S)
Sinon, bah je vois pas du tout (je suis un peu paumé :S)
ebousquie
Messages postés
40
Date d'inscription
lundi 12 mai 2008
Statut
Membre
Dernière intervention
28 avril 2009
28 avril 2009 à 11:14
28 avril 2009 à 11:14
La redondance c'est pour effectuer des calculs avec des quaternions et non avec des vecteurs, d'où la conversion "aller-retour" Vect -> Quat -> Vect
... et ça ne fonctionne pas. Déjà, si la démarche est la bonne, c'est cool. Mais je ne sais pas quoi corriger d'autre.
... et ça ne fonctionne pas. Déjà, si la démarche est la bonne, c'est cool. Mais je ne sais pas quoi corriger d'autre.
feadin91
Messages postés
257
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
28 avril 2010
89
28 avril 2009 à 11:25
28 avril 2009 à 11:25
Ah d'accord... Et bien désolé, je ne vois pas du tout. Faut dire que je suis pas dans le contexte, j'ai du mal à saisir ^^
Tu n'as pas des collègues avec qui tu peux essayer de résoudre le problème?
Moi je passe mon tour :D (désolé encore)
Tu n'as pas des collègues avec qui tu peux essayer de résoudre le problème?
Moi je passe mon tour :D (désolé encore)