三点共圆

三点共圆问题

已知三个点的坐标 p1(x1,y1),p2(x2,y2),p3(x3,y3)p_1(x_1,y_1), p_2(x_2,y_2), p_3(x_3,y_3),求这三个点形成的圆 CC 的中心 cc、半径 rr.

我们首先把三点共线的情况排除掉,因为这种情况下必定不可能共圆。

接着,我们首先求出 p1p2p_1p_2p2p3p_2p_3 的中垂线 l1,l2l_1,l_2,计算其交点,则这个交点必为圆心 cc. 于是半径 rr 也很好求了.

三点共圆 (C++)

1
2
3
void none() {

}

圆的公切线