bsamplecurve.m

来自「lu 分解 b样条曲线」· M 代码 · 共 19 行

M
19
字号
x=[1 0 0 0.5 1.5 2];
y=[0 0 1 1.5 0.5 1.8];
plot(x,y,'bh');hold on;
plot(x,y);hold on;
n=length(x);
m=60;

for l=1:(n-2)
    num=1;  %第num个计算点(xx(num),yy(num))
    for u=0:1/m:1
        xx(num)=u*u*(x(l)-2*x(l+1)+x(l+2))/2 + u*(-x(l)+x(l+1)) ...
            + (x(l)+x(l+1))/2;
        yy(num)=u*u*(y(l)-2*y(l+1)+y(l+2))/2 + u*(-y(l)+y(l+1)) ...
            + (y(l)+y(l+1))/2;
        num=num+1;
    end
    plot(xx,yy,'r');hold on;
end

⌨️ 快捷键说明

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