[RESOLU] coordonnées d'un point via une rotation

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
maf
Membre Rationnel
Messages: 911
Enregistré le: 08 Jan 2007, 17:57

re

par maf » 21 Aoû 2007, 13:31

Donc si on récapitule, on connaît :

Le centre du cercle nommé O de coordonnées connues (xO,yO)
Un point quelconque P3 de coordonnées connues (xP3, yP3)
Un angle alpha entre P3 et P4, en radians connu.

On peut utiliser xO,yO,xP3,yP3,alpha pour les formules.

On est bien d'accord là dessus ??



anima
Membre Transcendant
Messages: 3762
Enregistré le: 15 Sep 2006, 11:00

par anima » 21 Aoû 2007, 13:34

spender a écrit:oui maf bien sûr que j'ai les coordonnées du centre du cercle sinon je le trace comment :doh:
donc vu que c'est de la trigo basique tu peux m'expliquer les angles ? les signes ?

Tu sais faire une rotation normale? Si oui, tout ce que tu as a faire, c'est translater tous les points en suivant une translation RO -> O (centre de translation -> origine du repere). Comme ca, tu te retrouves avec un cercle trigo "normal".

Supposons RO(Ox,Oy), O(0,0);
Donc, pour passer de RO a O, on doit enlever aux coordonnees Ox et Oy.

Supposons un point P present sur le cercle de rotation. P(x,y). En le translatant, on aura PO, translate, de coordonnees PO(x-Ox,y-Oy). Tu peux donc trouver la distance entre PO et l'origine, en deduire le module de rotation; ensuite, suivant les coordonnees, trouver l'angle fait entre PO et l'axe des abscisses. Enfin, quand tu l'as (), tu ajoutes a cet angle ton angle de rotation et tu trouves... :)

Sinon, tu peux simplement utiliser la formule en complexe, en trouvant les affixes des points.

spender
Membre Naturel
Messages: 14
Enregistré le: 21 Aoû 2007, 11:07

par spender » 21 Aoû 2007, 13:47

voici un cas qui me pose problème.

je mets du code mais c'est très compréhensible.

Code: Tout sélectionner
Point2D ptDepart = new Point2D.Double(37,-15);
double angleDegre = -80;
double angleRadian = Math.PI*angleDegre/180;
double sina = Math.sin(angleRadian);
double cosa = Math.cos(angleRadian);
double x1 = ptDepart.getX() * cosa - ptDepart.getY() * sina;
double y1 = ptDepart.getX() * sina + ptDepart.getY() * cosa;
System.out.println("coordonnées pt tourné sur le cercle");
System.out.println(x1);
System.out.println(y1);


résultat dans la console:

coordonnées pt tourné sur le cercle
-8.347133721506696
-39.04260952645565

alors que sur le papier, les coordonnées de ce point sont:
x= 21,5
y= 33,5

vous voyez ?

maf
Membre Rationnel
Messages: 911
Enregistré le: 08 Jan 2007, 17:57

re

par maf » 21 Aoû 2007, 13:52

Pourquoi utilise-tu les propriétés des triangles rectangle alors que le triangle P3;O;P4 ne l'est pas !!

spender
Membre Naturel
Messages: 14
Enregistré le: 21 Aoû 2007, 11:07

par spender » 21 Aoû 2007, 14:14

maf, ce n'est pas moi qui est inventé ces formules.
mais si je met un angle de +80 à la place de -80, ça fonctionne et me renvoit bien les bonnes coordonnées comme sur papier.
vous pouvez me dire pourquoi ? je suis perdu dans le sens des angles :cry:
est-ce dû à l'axe des ordonnées qui est vers le bas ?

maf
Membre Rationnel
Messages: 911
Enregistré le: 08 Jan 2007, 17:57

re

par maf » 21 Aoû 2007, 14:24

J'ai pas du bien capté les calculs alors ...

A la limite, le problème pourrait venir seulement pour la verticale qui est inversée pour le sens trigo.

Le sens positif des angles trigo c'est le sens CONTRAIRE des aiguilles de la montre

Dasson
Membre Relatif
Messages: 104
Enregistré le: 09 Mar 2007, 06:52

par Dasson » 21 Aoû 2007, 15:19

Un peu de code ActionScript :
--
donx = m._x - 540;
dony = m._y - 320;
rayon = Math.sqrt((donx*donx) + (dony*dony));
t0 =- Math.atan2(dony,donx);
n._x=rayon*Math.cos(angle+t0)+540;
n._y=-rayon*Math.sin(angle+t0)+320;
--
Utilisé dans la définition de la rotation donnée dans
http://rdassonval.free.fr/flash/rotation10.html
D'autres programmes sur la rotation dans
http://rdassonval.free.fr/flash.html

Peut-être un début de réponse à ta question ?

Dasson
Membre Relatif
Messages: 104
Enregistré le: 09 Mar 2007, 06:52

par Dasson » 21 Aoû 2007, 15:23


spender
Membre Naturel
Messages: 14
Enregistré le: 21 Aoû 2007, 11:07

par spender » 21 Aoû 2007, 15:39

Dasson, mouais je ne vois pas trop pourquoi tu as mis ces liens.
Sinon, soit en modifiant le signe de l'angle (+a ou -a) et/ou bien le signe du sin (+sin ou -sin), j'arrive à retrouver les bonnes coordonnées mais à taton....
je n'arrive pas à trouver les bonnes règles.
ce n'est pas lié au signe du sinus !?
quand je suis dans le demi cercle haut, je suis en -sin dans la formule et quand je suis dans le demi cercle bas, je suis en +sin, non ?

spender
Membre Naturel
Messages: 14
Enregistré le: 21 Aoû 2007, 11:07

par spender » 21 Aoû 2007, 16:53

bon je pense que là c'est plus clair pour moi. :we:
même si je me sentais un peu seul avec mes 2 équations pour trouver les coordonnées.... et bien contrairement à ce que certains ont pû croire ou penser et bien elles fonctionnent très bien quand on sait s'en servir :id:
mes problèmes concernaient bien:
- le signe du sinus (inversé par rapport à la normale sur mon repère)
- le signe de l'angle
et forcément à force de mesurer des angles, je prenais des angles dépassant les 180°, ça n'arrangeait rien, pô bon.....
donc c'est okay pour l'utilisation de ces formules :king2:
merci quand même à ceux qui se sont penché sur mon soucis :++:
@+ :salut:

anima
Membre Transcendant
Messages: 3762
Enregistré le: 15 Sep 2006, 11:00

par anima » 21 Aoû 2007, 18:09

:doh:

C'était de l'ActionScript? Si oui, le cercle trigo est inversé! Tu aurais pu mentionner le language, je t'aurai dit ca direct :hum:

spender
Membre Naturel
Messages: 14
Enregistré le: 21 Aoû 2007, 11:07

par spender » 21 Aoû 2007, 18:55

Anima, je ne sais pas à qui tu t'adresses, à Dasson ou à moi ?
:doh:
Car si c'est à moi et juste si c'est à moi, mon premier post était assez précis, le langage java a été cité et plus tard, j'ai bien souligné que c'était un cercle trigonométrique.
De plus, je l'ai précisé ultérieurement mais dès le début on pouvait voir sur mon croquis (vaut souvent mieux qu'un long discours, n'est-ce pas?) que l'axe des ordonnées était vers le bas et non vers le haut comme habituellement.
T'aurais pas lu en diagonal ? mais pas entre les lignes ? :hein:

anima
Membre Transcendant
Messages: 3762
Enregistré le: 15 Sep 2006, 11:00

par anima » 21 Aoû 2007, 18:58

spender a écrit:Anima, je ne sais pas à qui tu t'adresses, à Dasson ou à moi ?
:doh:
Car si c'est à moi et juste si c'est à moi, mon premier post était assez précis, le langage java a été cité et plus tard, j'ai bien souligné que c'était un cercle trigonométrique.
De plus, je l'ai précisé ultérieurement mais dès le début on pouvait voir sur mon croquis (vaut souvent mieux qu'un long discours, n'est-ce pas?) que l'axe des ordonnées était vers le bas et non vers le haut comme habituellement.
T'aurais pas lu en diagonal ? mais pas entre les lignes ? :hein:

Désolé, j'ai vu ActionScript et j'ai vu un bout de code qui y ressemblait...

Je ferai mieux de me taire, moi. Quoique, peut-etre que java a le meme probleme de cercle trigo inversé.

spender
Membre Naturel
Messages: 14
Enregistré le: 21 Aoû 2007, 11:07

par spender » 21 Aoû 2007, 19:21

:ptdr: Anima, pas de pb, même si tu n'as pas bien suivi :dodo: c'est sympa de ta part de t'intéresser à mon problème (enfin ex problème now :we: ).
C'est Dasson qui a déposé du code ActionScript, moi à chaque fois, c'était du java que je mettais.
je ne connais pas l'ActionScript mais en java le cercle trigo n'est pas inversé.
c'est positif dans le sens anti-horaire.
voili voilou :arf:
@+
marc

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 15 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