MATLAB拟合圆 及 得到圆的半径
定点(2,3)半径2.03,又边要超出边界0.03,画面调整成为高度(3-2.03),宽2,最右下角的点就是圆的一边顶点,再画面调整为高3,宽2,这个点是圆心;
调整画面为高3宽(2+2.03),这个时候最右下角的点是圆的右面顶点,现在圆心定啦,上顶点和右顶点也定,知道这3个点就能画出想要的圆。
输入的离散点在
变量X中
X=[x1 y1 z1;
x2 y2 z2;
是一个n行,3列的矩阵,1,2,3列分别为x,y,z坐标
p0=mean(X);%以重心为初始圆心
r02=mean(sqrt(sum((X-repmat(p0,[size(X,1) 1])).^2,2)));%以到重心的平均距离为初始半径
f=@(p)(X(:,1)-p(1)).^2+(X(:,2)-p(2)).^2+(X(:,3)-p(3)).^2-p(4)^2;
p=lsqnonlin(f,[p0 r02]);
x0=p(1);y0=p(2);z0=p(3);
radii=abs(p(4));
x0 y0 z0 为圆心坐标
radii为半径。
扩展资料:
如果物体没有中心,则该术语可能指其周长,其外接圆的半径或外接球体。 在任一情况下,半径可以大于直径的一半,通常将其定义为图中任何两个点之间的最大距离。 几何图形的半径通常是其中包含的最大圆或球的半径。 环,管或其他中空物体的内半径是其空腔的半径。
对于常规多边形,半径与其周长相同。正多边形的内半径也称为心距。在图论中,图的半径是从u到图的任何其他顶点的最大距离的所有顶点u的最小值。
参考资料来源:百度百科-圆心
2024-11-14 广告