Changement de base pour une rotation/translation

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
TiToine1978
Messages: 4
Enregistré le: 22 Juin 2007, 23:40

Changement de base pour une rotation/translation

par TiToine1978 » 22 Juin 2007, 23:52

Bonjour à tous,

Je viens chercher un peu d'aide sur ce forum pour un problème assez simple.
Voilà, j'ai deux repères 2D avec deux échelles différentes, les vecteurs de base sont colinéaires.
Une rotation puis une translation d'un objet est défini dans un des 2 repères pour faire bouger cet objet de sa position initiale a sa position finale.
Je voudrais obtenir la rotation et la translation qui donnerait la même position finale de l'objet dans le second repère (l'orientation de l'objet est importante).

Est-ce qu'il existe un moyen de le faire rapidement avec des matrices ? pour l'instant j'en suis a resoudre ca a la main avec de la trigo.

Merci.



yos
Membre Transcendant
Messages: 4858
Enregistré le: 10 Nov 2005, 21:20

par yos » 23 Juin 2007, 00:23

Bonsoir.
Il te faut la matrice de passage (vecteurs d'une base en fonction des vecteurs de l'autre : elle sera diagonale ici) mais plus précisément, il faut les formules de changement de repère car il faut tenir compte du changement d'origine. Ce sont des formules type X=kx+a, Y=k'y+b.
D'autre part il faudrait les formules analytiques de la translation-rotation (qui d'ailleurs équivaut à une simple rotation) dans le premier repère.
Peux-tu préciser ce que tu sais?

fahr451
Membre Transcendant
Messages: 5144
Enregistré le: 06 Déc 2006, 00:50

par fahr451 » 23 Juin 2007, 00:36

bonsoir


repère R = (O,i,j)
le mobile a la position initiale repérée par Xi et position finale Xf

repère R' (0',i',j').................................... X'i .......................X 'f


la transformation dans R est

(1)Xf = RXi + U0

où R est la matrice de la rotation est U0 le vecteur de la translation

le changement de repère donne la relation

(2) X = PX' + V0 où P est la matrice de passage de (i,j) à (i',j') et V0 la colonne de coordonnées de O ' dans R

d'après ce que je comprends P est diagonale i ' = a i et j ' = aj
(même a je pense)

il suffit d'utiliser (2) pour Xi et Xf et de d'injecter dans (1) pour avoir la relation entre X'i et X'f

REM si D= diag(a,a) D et D^(-1) commutent avec R

TiToine1978
Messages: 4
Enregistré le: 22 Juin 2007, 23:40

par TiToine1978 » 23 Juin 2007, 01:58

Merci pour ces réponses rapides qui me donnent déja une idée de comment procéder.

En fait j'ai oublié un élément important, je connais les coordonnées des positions initiales et finales dans les deux repères.
Je connais la transformation dans R(o,i,j)
Je veux déterminer la transformation dans R'(o',i',j')

Je sais que dans le repère R = (O,i,j) la transformation de l'objet est défini comme ca (alpha est connu, dx, dy aussi):

x = x.cos(alpha) - y.sin(alpha) + dx
y = x.sin(alpha) + y.cos(alpha) + dy

ca se met facilement sous forme matriciel.

fahr451 , tu as raison sur cela : P est diagonale i ' = a i et j ' = aj (même a je pense)

J'essaierai demain de faire les calculs :dodo: .

TiToine1978
Messages: 4
Enregistré le: 22 Juin 2007, 23:40

par TiToine1978 » 25 Juin 2007, 23:03

Après calculs fait, je trouve cette transformation :

R'=R
Tx'=a.Tx + dx(1+cos(alpha))-dy.sin(alpha)
Ty'=a.Ty + dy(1+cos(alpha))+dx.sin(alpha)

Ce qui m'a étonné sur le coup c'est que la matrice de roation est la même.
Je testerai demain dans mes algos voir si ca fonctionne.

Merci !

fahr451
Membre Transcendant
Messages: 5144
Enregistré le: 06 Déc 2006, 00:50

par fahr451 » 26 Juin 2007, 01:34

la matrice de la rotation est la même aucune surprise
je te l'avais dit en fait

la matrice est

R' =DRD^(-1) avec D et D^(-1) scalaires donc commutent avec R

donc R' = RDD^(-1)=R

TiToine1978
Messages: 4
Enregistré le: 22 Juin 2007, 23:40

par TiToine1978 » 27 Juin 2007, 01:15

fahr451, ok je n'avais pas saisi ta remarque, en effet R'=DRD^(-1) etc...
En plus graphiquement on s'en rend compte facilement vu les conditions.
Par contre j'ai fais une erreur dans la translation T', enfin la méthode y est.
Merci beaucoup.

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 90 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite