Pensez à lire la Charte avant de poster !

$\newcommand{\K}{\mathbf K}$


Les-Mathematiques.net - Cours de mathématiques supérieures
 Les-Mathematiques.net - Cours de mathématiques universitaires - Forum - Cours à télécharger

A lire
Deug/Prépa
Licence
Agrégation
A télécharger
Télécharger
131 personne(s) sur le site en ce moment
E. Cartan
A lire
Articles
Math/Infos
Récréation
A télécharger
Télécharger
Théorème de Cantor-Bernstein
Théo. Sylow
Théo. Ascoli
Théo. Baire
Loi forte grd nbre
Nains magiques
 
 
 
 
 

calcul d'un angle donné par 3 points

Envoyé par Bennn 
Bennn
calcul d'un angle donné par 3 points
il y a huit années
Titre initial : 3 points en entrée et calcul d'un angle spécifique.
[Le titre doit être concis. AD]

Bonjour,

J'ai une question concernant le calcul d'un angle.
Les seules données que j'ai en entrée sont les coordonnées (X,Y) de 3 points A, B et C.

Avec le théorème d'Al Kashi, je suis capable de calculer les angles formés par ces points. L'angle qui m'intéresse est l'angle formé au niveau de B.

J'ai donc utilisé le calcul suivant pour calculer mon angle (c'est du code vb):

fA = Sqr(((Xc - Xb) ^ 2) + ((Yc - Yb) ^ 2)) 'distance entre b et c
fB = Sqr(((Xc - Xa) ^ 2) + ((Yc - Ya) ^ 2)) 'distance entre a et c
fC = Sqr(((Xb - Xa) ^ 2) + ((Yb - Ya) ^ 2)) 'distance entre a et b
fAngle = ((fA ^ 2) + (fC ^ 2) - (fB ^ 2)) / (2 * fA * fC) '(a2 + c2 - b2) / (2*a*c)
Acos(fAngle) 'inverse du cosinus
Degrees(fAngle) 'fonction degree

Cela fonctionne très bien mais ce calcul me renvoi toujours l'angle interne du triangle formé par ces 3 points (inférieur à 180 degré). Or moi je veux toujours calculer l'angle formé "en bas à gauche" du point B. En effet, je veux calculer l'angle toujours dans le sens de rotation d'une aiguille d'une montre. Parfois cet angle est inférieur à 180 degrés mais parfois il est supérieur à 180 degrés en fonction de comment sont positionnées les 3 points.

Je sais qu'il me suffit de faire 360° - fAngle pour obtenir l'angle souhaité lorsque l'angle que je dois calculer est supérieur à 180°. Le problème est que je ne sais pas comment savoir à l'avance si je dois ou non soustraire mon résultat à 360°.

Donc, ma question est : est-il possible avec 3 points de savoir si le fameux angle que je dois calculer sera supérieur ou non à 180°? Ainsi je saurais quelle formule je dois utiliser pour calculer mon angle.

Merci pour votre aide.

Ben.



Edité 1 fois. La dernière correction date de il y a huit années et a été effectuée par AD.
Re: 3 points en entrée et calcul d'un angle spécifique.
il y a huit années
avatar
Trouve le sinus de cet angle avec le produit vectoriel.

Le café est un breuvage qui fait dormir,
quand on n’en prend pas.
-+- Alphonse Allais -+-
Salut Nico,

Merci pour ta réponse. En revanche je n'ai pas peur de dire que je suis nul en maths. Je fais un programme pour un pote qui a besoin de mes talents de programmeur mais pas de mathématicien :)

En gros je ne comprends pas ta réponse. J'ai oublié ce que c'est qu'un produit vectoriel!

Tu pourrais stp me donner exactement la formule en question? C'est une formule que j'applique au résultat de ma fonction (fAngle)?

Merci encore.

Ben.
Re: 3 points en entrée et calcul d'un angle spécifique.
il y a huit années
avatar
Copie ma phrase dans un moteur de recherche…

Le café est un breuvage qui fait dormir,
quand on n’en prend pas.
-+- Alphonse Allais -+-
Merci, tu es trop aimable...
Re: 3 points en entrée et calcul d'un angle spécifique.
il y a huit années
Mon cher Benn
Soient deux vecteurs:
$\overrightarrow{V}(x, y)$ et $\overrightarrow{V'}(x', y')$ avec leurs composantes dans une base orthonormée.et soit $\theta = (\overrightarrow{V}, \overrightarrow{V'})$ leur angle
Dans cette base, le produit scalaire est:
$\langle \overrightarrow{V}\mid \overrightarrow{V'}\rangle = x.x' + y.y' = \| \overrightarrow{V}\|.\| \overrightarrow{V'}\|\cos(\theta)$
et le produit mixte que Nicolas appelle abusivement vectoriel:
$[ \overrightarrow{V}, \overrightarrow{V'}]= x.y' - y.x' = \| \overrightarrow{V}\|.\| \overrightarrow{V'}\|\sin(\theta)$
Ici $ \| \overrightarrow{V}\|^2 = x^2+y^2$ et $ \| \overrightarrow{V'}\|^2 = x'^2+y'^2$.
Tu calcules ainsi $\sin(\theta)$ et $\cos(\theta)$ et tu récupères ensuite $\theta$.
Amicalement
Pappus
Bennn
Re: calcul d'un angle donné par 3 points
il y a huit années
Merci Pappus ;)

J'ai réussi à faire ce que je souhaitais faire, j'ai trouvé quelque chose de similaire sur le net déjà en VB. ^^

Bonne journée.

Ben.
Re: calcul d'un angle donné par 3 points
il y a huit années
avatar
Le premier lien dans Gogole donne les trois quarts de la solution, le deuxième fait tout…

Le café est un breuvage qui fait dormir,
quand on n’en prend pas.
-+- Alphonse Allais -+-
Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquer ici pour vous connecter

Liste des forums - Statistiques du forum

Total
Discussions: 136 699, Messages: 1 321 816, Utilisateurs: 24 165.
Notre dernier utilisateur inscrit joliesmaths.


Ce forum
Discussions: 8 050, Messages: 92 168.

 

 
©Emmanuel Vieillard Baron 01-01-2001
Adresse Mail:

Inscription
Désinscription

Actuellement 16057 abonnés
Qu'est-ce que c'est ?
Taper le mot à rechercher

Mode d'emploi
En vrac

Faites connaître Les-Mathematiques.net à un ami
Curiosités
Participer
Latex et autres....
Collaborateurs
Forum

Nous contacter

Le vote Linux

WWW IMS
Cut the knot
Mac Tutor History...
Number, constant,...
Plouffe's inverter
The Prime page