ピタゴラスの定理から
(x1 – Px)^2 + (y1 -Py)^2 = R^2・・・①
(x2 – Px)^2 + (y2 -Py)^2 = R^2・・・②
(x3 – Px)^2 + (y3 -Py)^2 = R^2・・・③
①-②
(x1 – Px)^2 – (x2 – Px)^2 + (y1 – Py)^2 – (y2 – Py)^2 = 0
まとめると
-2(x1 – x2)Px – 2(y1- y2)Py + x1^2 – x2^2 + y1^2 – y2^2 = 0
同様に①-③は
-2(x1 – x3)Px – 2(y1- y3)Py + x1^2 – x3^2 + y1^2 – y3^2 = 0
この二つの式は連立方程式なので、二元一次方程式のクラメル式を使う
a1x + b1y = c1
a2x + b2y = c2
のとき
x = (c1b2 – c2b1) / (a1b2 – a2b1)
y = (a1c2 – a2c1) / (a1b2 – a2b1)
で求まるので、
a1 : -2(x1 – x2)
b1 : -2(y1 – y2)
a2 : -2(x1 – x3)
b2 : -2(y1 – y3)
c1 : -(x1^2 – x2^2 + y1^2 – y2^2)
c2 : -(x1^2 – x3^2 + y1^2 – y3^2)
と当てはめていけば答えは
Px = ((x1^2 – x2^2 + y1^2 – y2^2)(y1 – y3) – (x1^2 – x3^2 + y1^2 – y3^2)(y1 – y2)) / (2(x1 – x2)(y1 – y3) – 2(x1 – x3)(y1 – y3))
Py = ((x1^2 – x3^2 + y1^2 – y3^2)(x1 – x2) – (x1^2 – x2^2 + y1^2 – y2^2)(x1 – x3)) / (2(x1 – x2)(y1 – y3) – 2(x1 – x3)(y1 – y3))
となります。