Calcul des cercles d'Apollonius

1er cercle :Rayon R1
distance a
 
2ème cercle :Rayon R2
distance h
 
3ème cercle :Rayon R3
distance b

 

Méthode

Soit (x, y) les coordonées du centre du cercle cherché de rayon R.
(-a, 0) celles du cercle de rayon R1
(0, -h) celle du cercle de rayon R2
(b, 0) celles du cercle de rayon R3

Distance du centre au centre du premier cercle : (R + R1)² = (x + a)² + y² ou
R² - x² - y² = 2ax - 2R1R - R1² + a²   [1]
Distance au centre du 2ème cercle : (R - R2)² = x² + (y + h)² ou
R² - x² - y² = 2hy + 2R2R - R2² + h²   [2]
Distance au centre du 3ème cercle : (R + R3)² = (x - b)² + y²
R² - x² - y² = -2bx - 2R3R - R3² + b²   [3]

Ces équations sont toutes de la forme : R² - x² - y² = Ax + By + CR

La différence [1] - [3] donne : 2ax - 2R1R - R1² + a² + 2bx + 2R3R + R3² - b² = 0 soit :
2(a + b)x = 2(R1 - R3)R + R1² - R3² + b² - a²   [4]
Ou x = PR + Q avec P = (R1 - R3)/(a + b) et Q = 0.5 × (R1² - R3² + b² - a²) / (a + b)

La différence [1] - [2] donne : 2ax - 2R1R - R1² + a² - 2hy - 2R2R + R2² - h² = 0 ou
2hy = -2(R1 + R2)R + 2ax - R1² + R2² + a² - h²

En substituant x de [4] dans [5] on obtient y = UR + V avec
U = (aP - R1 - R2) / h et V = (2aQ - R1² + R2² + a² - h²) / 2h

En substituant alors x et y dans l'équation [2] on obtient une équation du 2nd degré en R :
(R - R2)² = (PR + Q)² + (UR + V + h)² ou
sR² + 2mR + n = 0 avec
s = P² + U² - 1
m = PQ + U(V + h) + R2
n = Q² + (V + h)² - R2²

En choisisant les cercles différemment, on trouve en général 8 solutions au total.
Celles-ci sont tout simplement obtenues avec les formules précédentes mais tous les signes possibles pour R1, R2, R3.
Ceci donnerait 16 solutions, il suffit de ne retenir à chaque fois qu'une des deux solutions de l'équation du second degré.
Les calculs précédents échouent si a + b = 0 (cercles 1 et 3 concentriques) ou si h = 0 (centres alignés).
L'application directe des formules précédentes peut conduire à des résultats faux par manque de précision.
Le présent script ne prend pas en compte ces cas "pathologiques".

Sans JavaScript, malheureusement vous n'aurez rien du tout ! na !

 

Accueil Arithmétiques Géométrique Divers Thèmes Scripts Jeux Exercices Sujet précédent Sujet suivant