ChronoMath, une chronologie des MATHÉMATIQUES
à l'usage des professeurs de mathématiques, des étudiants et des élèves des lycées & collèges
Équation du cercle circonscrit à un triangle       programme JavaScript

Dans le plan muni d'un repère orthonormé, Voici un triangle ABC et son cercle circonscrit. On a ici A(-4,4), B(4,6), C(6,3).

Le petit programme JavaScript ci-après fournit l'équation cartésienne d'un cercle dont vous fournissez 3 points A, B et C au moyen de leurs coordonnées : il s'agit donc du cercle circonscrit au triangle ABC. Le cas de points alignés ou confondus est pris en compte par le programme, lequel signale une erreur de cdonnées (à éviter évidemment...).

La figure ci-dessous est générée au moyen du logiciel de géométrie dynamique Cabri Géomètre, dans sa version CabriJava pour Internet :


Si votre navigateur accepte les applets Java (» extension CheerpJ) :
Vous pouvez déplacer les sommets A, B et C du triangle, ainsi que l'origine

 

<SCRIPT LANGUAGE=JavaScript>
function circons()
{
x1=0;y1=0;x2=0;y2=0;x3=0;y3=0;
x1=eval(prompt("point1 : x1=",x1)); y1=eval(prompt("point1 : y1 =",y1));
x2=eval(prompt("point2 : x2=",x2)); y2=eval(prompt("point2 : y2 =",y2));
x3=eval(prompt("point3 : x3=",x3));y3=eval(prompt("point3 : y3 =",y3));
a=x2-x1;b=y2-y1;c=x3-x2;d=y3-y2;
x12=(x1+x2)/2;y12=(y1+y2)/2;x23=(x2+x3)/2;y23=(y2+y3)/2;
if (a*d-b*c==0){alert("erreur : les points sont alignés");return}
if (b==0){xc=x12;yc=y23-(xc-x23)*c/d}
//------------- (AB) est horizontale
else   /
/ --------------(AB) est  oblique
{
if(d==0) {xc=x23;yc=y12-(xc-x12)*a/b}
else
{xc=(y23-y12+c*x23/d-a*x12/b)/(c/d-a/b);yc=y23-(xc-x23)*c/d}
}
alert("X centre="+xc+"\n"+"Y centre="+yc);
r2=(x1-xc)*(x1-xc)+(y1-yc)*(y1-yc);
r=Math.sqrt(r2);
alert("rayon au carré : r^2 = "+r2+"\n"+"rayon = "+r)
return
}
</SCRIPT>



Quelques explications :   

Dans ce programme, on a :   

On recherche le centre du cercle circonscrit à l'intersection des médiatrices de [AB] et [BC].

Il faut distinguer (AB) horizontale ou non dans le repère orthonormé considéré car, dans le premier cas, la médiatrice de [AB] sera verticale avec une équation de la forme x = k.

On utilise :   


© Serge Mehl - www.chronomath.com