【計算幾何】如何計算兩個圓的交點坐標
阿新 • • 發佈:2018-01-24
style coo 正交 ces sta 設定 由於 直接 ima
How to calculate two coordinates of the intersection points of two circles?
題目:
給定兩個圓的的方程
(x-x1)^2+(y-y1)^2=r1^2,
(x-x2)^2+(y-y2)^2=r2^2
求解兩個圓的交點坐標。
這種知識是高中的知識了,如果直接聯立,由於計算特別暴力所以很難得到正確結果。
事實上,造成這種計算問題的結果是因為消去一個變量後,剩下變量的系數太過復雜。
我們通過更改坐標系的方法來使得另外一個系數變得簡單。
我們先計算中點坐標:
圓心距:
設定兩個新的正交單位向量作為新的坐標系的x和y軸,而原點為圓心線段的中點, 設為M:
在新的坐標系中, 圓1的方程變為:
(1)
圓2的方程變為:
(2)
聯立(1)(2)兩式,得到a=
最後的交點變換回原來的坐標:
References:
https://math.stackexchange.com/questions/256100/how-can-i-find-the-points-at-which-two-circles-intersect
【計算幾何】如何計算兩個圓的交點坐標