Bonjour,
Tout d'abord, veuillez me pardonner si je me trompe d'endroit. Je viens de m'inscrire et ce forum est immense.
Je cherche à résoudre un problème depuis une semaine mais n'ayant pas fait d'études, je ne dispose pas des connaissances en mathématiques et trigonométrie nécessaires.
N'étant pas sûr non plus d'employer les bons termes, j'ai fait un dessin pour mieux me faire comprendre :
Je cherche à mesurer l'angle entre les vecteurs O-A et O-E mais voici les détails :
Dans un plan en 2 dimensions (x,y, -180° 0 180°), le point O se déplace librement.
Quelque soit sa position et son angle dans le plan (x,y), les points A, B, C et D sont placés à 100 unités de distance dans les 4 directions cardinales qui lui sont propres. Ça, je sais le faire à partir du cosinus de l'angle de O dans le plan (x,y).
Je dois m'assurer que le déplacement de O ne s'effectue que selon ces 4 directions (avant, arrière ou latérale) mais jamais en diagonal.
Autrement dit, le vecteur O-E doit toujours se confondre avec un autre vecteur (vers une autre lettre).
Pour changer de direction dans le plan, le mouvement doit être stoppé, O fait une rotation qui fait donc aussi tourner les autres lettres et le mouvement peut reprendre.
Je connais toujours la position dans le plan de chaque point et quand un déplacement a été effectué, je connais également la position (x,y) du point d'arrivée "E".
A l'issue d'un déplacement , je veux donc vérifier l'angle entre O-E et les autres vecteurs. S'il est de zéro par rapport à O-A, c'est que le mouvement s'est fait vers l'avant, sans dévier. S'il est de 45°, c'est que le mouvement s'est fait en diagonale. Je saurai dans ce cas que le mouvement n'a pas été correct. Etc.
Il faut savoir aussi que je ne peux pas utiliser toutes les fonctions d'une calculatrice. Je peux déterminer les sinus et cosinus d'un angle et faire l'inverse mais je ne peux pas utiliser par exemple la tangente pour trouver l'angle. Je peux par contre obtenir la racine carrée d'un nombre (avec 7 décimales).
Dans un autre sujet, j'ai trouvé ceci :
Mais je n'ai pas réussi à l'utiliser dans mon cas.Le cosinus de l'angle formé entre 2 vecteurs est, par définition, le rapport du produit scalaire des vecteurs sur le produit des normes, soit avec tes notations:
cos a = (XaXb+YaYb+ZaZb) / sqrt((Xa²+Ya²+Za²)(Xb²+Yb²+Zb² ))
sqrt représente la racine carrée.
Si c'est utilisable, quelqu'un aurait-il la gentillesse de reformuler l'équation avec les lettres que j'ai données ?
Et sinon, de m'indiquer quelle(s) formule(s) je dois employer pour y parvenir (en tenant compte de mes maigres connaissances en mathématiques) ?
-----