取1、2的垂直平分线交于2、3或1、3的垂直平分线,交点即是圆心.
过1、2的直线l12:y=(y2-y1)(x-x1)/(x2-x1)+y1,
1、2的中点[(x1+x2)/2,(y1+y2)/2],
1、2的垂直平分线c12:y=(x1-x2)[x-(x1+x2)/2]/(y2-y1)+(y1+y2)/2;
过1、3的直线l13:y=(y3-y1)(x-x1)/(x3-x1)+y1,
1、3的中点[(x1+x3)/2,(y1+y3)/2],
1、3的垂直平分线c13:y=(x1-x3)[x-(x1+x3)/2]/(y3-y1)+(y1+y3)/2;
交点即圆心O的横坐标x由下式求得:
(x1-x2)[x-(x1+x2)/2]/(y2-y1)+(y1+y2)/2=(x1-x3)[x-(x1+x3)/2]/(y3-y1)+(y1+y3)/2;
即[(x1-x2)/(y2-y1)-(x1-x3)/(y3-y1)]x=(y1+y3)/2-(y1+y2)/2+(x1^2-x2^2)/(y2-y1)-(x1^2-x3^2)/(y3-y1);
x=[(y3-y2)(y3-y1)(y2-y1)/2+(x1^2-x2^2)(y3-y1)-(x1^2-x3^2)(y2-y1)]/[(x1-x2)(y3-y1)-(x1-x3)(y2-y1)];
=[(y1-y2)(y2-y3)(y3-y1)/2-x1^2(y2-y3)-x2^2(y3-y1)-x3^2(y1-y2)]/[(-x1(y2-y3)-x2(y3-y1)-x3(y1-y2)];
=[x1²(y2-y3)+x2²(y3-y1)+x3²(y1-y2)-(y1-y2)(y2-y3)(y3-y1)/2]/[x1(y2-y3)+x2(y3-y1)+x3(y1-y2)];
则y=(x1-x3)[x-(x1+x3)/2]/(y3-y1)+(y1+y3)/2;或=(x1-x2)[x-(x1+x2)/2]/(y2-y1)+(y1+y2)/2
得出圆心O座标后,再算出O和1、2或3三个点中任一个的距离就是圆弧的半径R;
圆的方程是(x-xo)^2+(y-yo)^2=R^2,式中的xo、yo就是上面算出的圆心O的横坐标x和纵坐标y.