bezier.m

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

M
40
字号
type=input('Input type number:');
switch type
    case '2'
        x=[1 2];
        y=[1 3];
    case '3'
        x=[1 2 3];
        y=[0 3 4];
    case '4'
        x=[1 3 4 5 7];
        y=[1 3 4 3 1];
    case '5'
        x=[1 3 4 5 7 9];
        y=[2 4 5 4 2 0];
    case '7'
        x=[1 3 4 5 7 9 10];
        y=[2 4 5 4 2 0 -0.5];
    case '8'
        x=[];
        y=[];
    case '9'
        x=[];
        y=[];
    otherwise break;
% end
x
plot(x,y,'r');hold on;
n=length(x);
m=input(':');

xx(1)=x(1);yy(1)=y(1);
for t=0:m:1
    xx(2)=0;yy(2)=0;
    for k=1:n
        xx(2)=x(1)*b(k,n,t);
        yy(2)=y(1)*b(k,n,t);
    end
    plot(xx,yy);hold on;
    xx(1)=xx(2);yy(1)=yy(2);
end

⌨️ 快捷键说明

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