clear all;
clc;
close all;
%已知随bai便三点,不在同一条du直线上zhi的三点确定一个圆?
A1=[0 0.05];
A2=[0.01 0.06];
A3=[0 0.07];
%求圆心坐dao标zhuan
A=[A1-A2;A2-A3];
B=([sum(A1.^2-A2.^2); sum(A2.^2-A3.^2)])/2;
if det(A)~=0
O=(A\B)';%O=[x y]是圆心坐标
r=sqrt(sum((O-A1).^2));%三点找一点算半径
else
error('不是三角形');%三点共线,不形成三角形就无解
end
%画图
cc=[A1;A2;A3];
plot(cc(:,1),cc(:,2),'r*');
hold on;
plot(O(1),O(2),'rO');
sita=0:pi/20:2*pi;
x=r*cos(sita)+O(1);
y=r*sin(sita)+O(2);
plot(x,y)















