Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3781 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  rotations 3D

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

rotations 3D

n°1856888
proce
Posté le 02-03-2009 à 20:26:43  profilanswer
 

Bonjour,
 
je me casse la tête sur un problème depuis plusieurs semaines, j'ai beau chercher sur le net, je n'arrive pas à trouver quelque chose qui pourrait m'aider...
voici mon problème :
J'ai 3 points A, B et C dans un repère 3D (axe X, axe Y et axe Z). Je connais les coordonnées de A, B et C dans ce repère.
Il me faut trouver les 3 angles de rotations (angle de rotation selon l'axe X, angle de rotation selon l'axe Y, angle de rotation selon l'axe Z) nécessaires pour réaliser une rotation de centre A et permettant de passer du point B au point C.
l'ordre des rotations peut être aléatoire, dans un premier temps j'utilise essentiellement l'ordre suivant : rotation selon Z puis rotation selon X puis rotation selon Y.
 
J'ai essayé plusieurs choses, mais je n'arrive jamais à trouver un résultat correct...
Est ce que quelqu'un aurait une solution?idée?un site qui peut m'aider?
 

mood
Publicité
Posté le 02-03-2009 à 20:26:43  profilanswer
 

n°1857002
olivthill
Posté le 03-03-2009 à 09:17:46  profilanswer
 

Si on connait les mathématiques, on peut utiliser les matrices de rotation, voir en français http://fr.wikipedia.org/wiki/Matrice_de_rotation ou l'article en anglais qui donne beaucoup plus d'informations, http://en.wikipedia.org/wiki/Rotation_matrix . Ce n'est pas obligatoire. On peut se débrouiller sans matrices, avec juste du bon sens. Mais dans un cadre scolaire, l'utilisation des matrices est généralement ce que souhaite le professeur.
 
En pratique, il y a souvent une seconde difficulté qui est la représentation en deux dimensions des points d'un espace en trois dimentions. Il faut allors faire une projection. Mais il en existe de plusieurs sortes. On peut avoir une vue cavalière (comme en dessin industriel de base), ou bien avoir une vue comme celle d'un oeil, mais alors cela dépend de la focale choisie (du grand angle avec des coins très arrondis ou une vision de loin très peu arrondie).
 
Bon courage !

n°1857004
Joel F
Real men use unique_ptr
Posté le 03-03-2009 à 09:28:42  profilanswer
 

pour les rotations, on priviligiera l'utilisation des Quaternions plutot que les matrices qui psoent un certians nombres de problemes
 
http://fr.wikipedia.org/wiki/Quaternion
et précisement :
http://fr.wikipedia.org/wiki/Quate [...] ectorielle

n°1857024
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 03-03-2009 à 11:18:26  profilanswer
 

+1 pour les quaternions
 
Une rotation de centre A qui amène B sur C c'est une rotation d'axe (AB vectoriel AC), et d'angle (AB,AC)  
 
Donc tu as un angle, et un axe. Avec ça tu as un quaternion q = (x,y,z,w) qui vaut
x = axe_x * sin(angle/2)
y = axe_y * sin(angle/2)
z = axe_z * sin(angle/2)
w = cos(angle/2)
 
Ce quaternion équivaut à une matrice de rotation 3x3 qui vaut
m11 = 1 - 2*yy - 2*zz
m12 = 2xy - 2zw
m13 = 2xz + 2yw
 
m21 = 2xy + 2zw
m22 = 1 - 2xx - 2zz
m23 = 2yz - 2xw
 
m31 = 2xz - 2yw
m32 = 2yz + 2xw
m33 = 1 - 2xx - 2yy  
 
De cette matrice de rotation on peut sortir les angles d'Euler (pas directement mais c'est pas trop dur)
 
 
Après on peut aussi faire des projections sur les 3 plans  :o


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°1858516
matafan
Posté le 06-03-2009 à 15:16:48  profilanswer
 

Note quand même qu'il n'est pas toujours possible d'amener ton point B sur ton point C par une rotation de centre A. Il faut que les distances AB et AC soient égales.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  rotations 3D

 

Sujets relatifs
need help !! cherche code source morpion 3d[Flash] Comment transformer un objet 3D en animation flash ?
Soya 3dProgrammation 3D
Recherche programmeur 3DOutil ou langage orienté simulation avec rendu 2D/3D
[OpenGL] Combiner plusieurs rotations 
Plus de sujets relatifs à : rotations 3D


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)