Bonjour,
Je souhaite calculer les coordonnées d'un point appartenant à un arc de cercle.
Je connait le rayon, les coordonnées des points de départ et d'arrivée de l'arc (A et B).
Comment calculer les coordonnées du point à l'intersection entre la médiatrice des points A et B et l'arc de cercle?
Merci de votre aide,
JB
Bonjour.
C'est de la trigo de base.
Cercle de centre O et de rayon R.
A partir des coordonnées de A, tu as l'angle qui va de l'axe des abscisses jusqu'à la demi-droite OA.
De même pour B qui te donne un angle .
Ce qui est demandé est de caractériser la bissectrice de l'angle orienté (OA, OB). La bissectrice coupe le cercle en un point C caractéristique de l'angle qui vaut (+)/2
A partir de R et de , tu trouves aisément les coordonnées de C.
Amitiés.
Bonjour,
il y a indétermination entre quatre valeurs selon que le centre du cercle est d'un côté ou de l'autre de la droite (AB) et selon quel arc AB on veut (le grand ou le petit)
sinon
1) tu calcules les coordonées du centre O (à moins que tu ne les connaisse déja vu que tu ne donne pas d'énoncé mais "un truc généraliste"), le point cherché est l'extrémité d'un vecteur d'origine O, colinéaire à OA+OB et de module R
donc OP = R.(OA+OB)/||OA+OB|| (en vecteurs)
2) ou tu calcules avec Pythagore la distance entre P cherché et le milieu M de AB, en fonction du rayon et de la distance AB.
puis le point cherché est tel que ||MP|| égale cette distance et MP perpendiculaire à AB
3) ou équation du cercle, équation de la médiatrice, points d'intersections, choix du bon point.
Alors en effet je souhaite la petite section de l'arc AB.
Dans mon programme je mettrai une option +1 ou -1 pour le côté du centre du cercle.
thierry45mada je ne voie pas trop comment y parvenir avec ta méthode
(tu peux détailler?)
Sinon mathafou je n'ai pas les coordonnées du centre.
je pense le calculer comme suit:
I centre de AB
'Les coordonnées de I
Xi = -(-XA - XB) / 2
Yi = -(-YA - YB) / 2
'La Distance AB
AB = (((XB - XA) ^ 2) + ((YB - YA) ^ 2)) ^ (1 / 2)
'La distance OI
OI = (R ^ 2) - (((AB / 2) ^ 2) ^ (1 / 2))
'Le vecteur u(a,b) est Xv
Xv = (-XB + XA) / (YB - YA)
a = (OI ^ 2 / (1 + (Xv ^ 2))) ^ (1 / 2)
b = Xv * Abs(a)
'Le Centre
Xo = Xi + Abs(a)
Yo = Yi + Abs(a) * Xv
C'est bon comme calcul ou il y a plus simple?
Merci de vos réactivités,
JB
Les coordonnées de I (milieu de AB, on ne dit pas "centre" d'un segment, on dit milieu)
Xi = -(-XA - XB) / 2
Yi = -(-YA - YB) / 2
quelle façon étrange d'écrire ça ! tu aimes drolement te compliquer la vie !
les coordonnées du milieu d'un segment sont simplement la demi somme des coordonnées :
Xi = (XA + XB) / 2
Yi = (YA + YB) / 2
(encore heureux, ça donne la même chose )
AB et OI, OK
par contre
Beaucoup de bonnes choses dans ce qui a été écrit, même si c'est parfois abusivement compliqué.
MAIS tu ne trouveras JAMAIS ta réponse si tu connais pas le centre du cercle.
Avec ce que tu as écrit au départ, on ne peut pas trouver le centre...
Ce ne serait pas tout bêtement le point de coordonnées (0,0)?
Amitiés
Non. on peut se passer du centre.
et non le centre n'a aucune raison d'être le point de coordonnées (0; 0) d'aprés ce que j'en comprends
on donne exclusivement les coordonnées de A et B et la mesure du rayon (et sa direction)
le centre est inconnu, on peut le calculer si on veut mais ça ne sert à rien. ce qu'on veut c'est les coordonnées du milieu P de l'arc AB.
je proposais donc de calculer la mesure du vecteur
par
de calculer un vecteur orthogonal à AB
et alors donne direct les coordonnées de P.
( est le paramètre qui dit si on veut un arc "vers le haut" ou "vers le bas", orienté par rapport au )
on peut même calculer l'autre point d'intersection, sur le "grand" arc, avec
après c'est juste des détails d'écriture sans se mélanger les pinceaux sur les noms qu'on donne aux diverses coordonnées qu'on calcule en intermédiaire.
ni sur les signes de ces coordonnées.
C'est exactement ça mathafou !
Soit tu as la première équation d= ∥(IP)∥
Qui donne d=R- √(R²- √((Xb-Xa)²+(Yb-Ya)²)/4)
Par contre on ne connait pas les coordonnées de B' si je me trompe pas
erreurs de calculs il n'y a plus de racines carrées dans le AB au carré
pour B' ça n'a pas d'importance,
ce qui compte est d'avoir un vecteur quelconque qui soit perpendiculaire à AB
(parce que sa "longueur" s'élimine dans le )
j'ai choisi de l'obtenir par rotation de +/2 du vecteur dont on connait les coordonnées (xB - xI; yB - yI)
et donc les coordonnées de sont (-(yB-yI); xB-xI)
on pourait tout aussi bien sans que ça change quoi que ce soit prendre un vecteur de longueur double en faisant tourner le vecteur lui-même
ou n'importe quel vecteur colinéaire avec (un vecteur unitaire par exemple) mais l'avantage de faire ainsi tourner ou c'est que sa norme est déja toute calculée !
c'est AB/2 ou AB, déja calculé pour calculer d.
ça m'éclaire mieux
pour etre sur que j'ai compris
dans ton image on a:
A (1;5)
B (6;2)
et R=6.6
Soit
AB = 5,8
d = 0.68
I (3,5 ; 3,5)
IP = d = 0.68 (1)
IP = √((Xp-3,5)²+(Yp-3,5)²) (2)
Donc: (1) (2):
√((Xp-3,5)²+(Yp-3,5)²) = d
Je finis avec du
-Xp + √(7Xp) = Yp + 7 - √(7Yp) - d
je suis bloqué à cet endroit.
Parce que tu cherches à résoudre des équations
alors qu'il s'agit d'un simple calcul sans aucune inconnue.
pour reprendre ces valeurs pas terribles (ne donnent que des résultats pas entiers, voire carrément irrationnnels)
= (5; -3)
AB = 34 5.83
I = (7/2; 7/2)
d = 6.6 - (6.6² - 34/4) 0.68
un vecteur orthogonal à : (3; 5) j'ai juste inversé les coordonnées de et changement d'un signe
avantage : sa norme est toute calculée : c'est AB.
vecteur = 0.68/5.83 (3; 5) = (0.35; 0.58)
coordonnées de P = (7/2 + 0.35; 7/2 + 0.58) = (3.85; 4.08)
fini.
(modulo les erreurs d'arrondis) cohérent avec une estimation à l'oeil de (3.9; 4.1) pour P (estimation tout aussi pifomètrique que les coordonnées de B et le rayon !)
Il faudrait choisir d'autres valeurs "plus sympas" (avec que des résultats qui tombent juste)
ou soigner le calcul numérique et afficher sur Geogebra les valeurs exactes (bof exactes à 10-15 près)
en ajustant R à 0.01 près et en ne demandant que deux chiffres après la virgule (et en positionnant B exactement sur (6; 2) !) :
tout à fait en accord avec les calculs précédents
Je récapitule en règle générale:
Vecteur AB = (Xb-Xa;Yb-Ya)
Dist AB = √((Xb-Xa)²+(Yb-Ya)²)
I milieu de AB
I ((XA + XB) / 2 ;(YA + YB) / 2)
d distance IP
d=R- √(R²- √((Xb-Xa)²+(Yb-Ya)²)/4)
Vecteur Abs(IP)=d
Vect IP = (d/AB) * (-Yab;Yab) = (-Yab*(d/AB);Yab*(d/AB))
P = (Xi+Xip ; Yi+Yip)
mathafou voici mon calcul.
Xi = (Xa + Xb) / 2
Yi = (Ya + Yb) / 2
Xab = Xb - Xa
Yab = Yb - Ya
AB = ((Xb - Xa) ^ 2 + (Yb - Ya) ^ 2) ^ (1 / 2)
d = R - ((R ^ 2 - (AB ^ 2) / 4)) ^ (1 / 2)
Xip = (d / AB) * (-Yab)
Yip = (d / AB) * (Xab)
Xp = (Xi + Xip)
Yp = (Yi + Yip)
j'ai attaché des images, on voit bien que 4 arcs ne sont pas du bon côté par rapport a ce que je veux.
Plus précisément ceux qui sont vers l'extérieur.
le signe + ou - que tu avais écris peut-il changer cela?
le côté où se trouve le centre est juste le changement de signe du vecteur AB
mes formules sont lorsque le centre se trouve "à droite" du trajet AB
on peut prendre BA pour mettre le centre de l'autre côté, ce qui revient partout à changer Xb - Xa en Xa - Xb et Yb - Ya en Ya - Yb
ou à rajouter un signe - dans :
Xip = (-d / AB) * (-Yab)
Yip = (-d / AB) * (Xab)
Nota : tu sembles utiliser des arcs de cercles pour faire une courbe d'interpolation.
je ne vois pas trop dans ce cas pourquoi tu as besoin du milieu de cet arc, mébon...
c'est le centre dont tu as besoin. (d'ailleurs il figure explicitement sur tes dessins)
Mais il serait sans doute plus judicieux d'utiliser ce qui se fait dans ce cas : des splines ou courbes de Bézier ?
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :