circle.m

来自「这是根据点拟合圆和直线的matlab程序」· M 代码 · 共 16 行

M
16
字号
function  [xc,yc,R,a]=circle(x,y)   
n=length(x);   
xx=x.*x;yy=y.*y;xy=x.*y;
A=[sum(x) sum(y) n;sum(xy) sum(yy) sum(y);sum(xx) sum(xy) sum(x)];
B=[-sum(xx+yy);-sum(xx.*y+yy.*y);-sum(xx.*x+xy.*y)];
a=A\B;   
xc=-.5*a(1);   
yc=-.5*a(2);   
R=sqrt((a(1)^2+a(2)^2)/4-a(3));
alpha=alpha1:pi/50:alpha2;
x1=R*cos(alpha); 
y1=R*sin(alpha); 
plot(x1,y1) 
axis equal 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?