Bonjour à tous,
Je travail avec visualC++ 2008 et les windows form.
Je vais essayer de faire simple:
J'ai un nombre de vecteur indeterminé ayant tous la même origine. Mon but est de parcourir chaque vecteur dans l'ordre anti-horaire, et de calculé l'angle qu'il forme avec le prochain vecteur. Cela afin de determiner l'endroit ou il y a le plus grand ecart entre 2 vecteurs.
J'utilise le produit scalaire pour trouver l'angle entre chaque vecteur.
Par exemple j'ai deux vecteur AB et AC qui forme un angle de 20degrés, AB étant avant AC dans le cicle, je voudrais que lorsque je demande l'angle de AB vers AC il me dise 20degrés et lorsque je demande l'angle AC vers AB il me dise 340degrés...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 angleABC=produit_scalaire_AB_AC/(longueur_AB*longueur_AC);
Or le problème est qu'il me retourne toujours 20 degrés, ce qui est normal je comprend bien
J'ai pensé detecter si l'angle est derrière et à ce moment là j'aurais fais 360 moins le résultat, mais comment savoir si l'angle est derrière?
Donc je suis bloqué et ouvert à toutes propositions même si elle n'a rien à voir avec la mienne...
Merci d'avance à ceux qui pourront m'aider.
Persnip
Partager