matlab 样条 曲面,如何用matlab绘制二次B样条三维曲面(已知控制点和节点矢量)?...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

小弟初来乍到,现在需要用matlaB绘制二次B样条曲面,现在已知信息:

小弟做这个已经一个星期了,现在无任何进展,现在是万分着急,希望高手们给小弟指点一二,小弟将感激不尽~~谢谢

p = 2;

q = 1;

r = 2;

节点矢量

uKnot = [0 0 0 1/4 1/4 2/4 2/4 3/4 3/4 4/4 4/4 4/4];

vKnot = [0 0 1 1];

wKnot =[0 0 0 1 1 1];

%控制点坐标

controlPts = [

1, 0, 4

1, 1, 4

0, 1, 4

-1, 1, 4

-1,0, 4

-1,-1, 4

0,-1, 4

1, -1, 4

1, 0, 4

2, 0, 4

2, 2, 4

0, 2, 4

-2, 2, 4

-2,0, 4

-2,-2, 4

0,-2, 4

2, -2, 4

2, 0, 4

1, 0, 2

1, 1, 2

0, 1, 2

-1, 1, 2

-1,0, 2

-1,-1, 2

0,-1, 2

1, -1, 2

1, 0, 2

2, 0, 2

2, 2, 2

0, 2, 2

-2, 2, 2

-2,0, 2

-2,-2, 2

0,-2, 2

2, -2, 2

2, 0, 2

1, 0, 0

1, 1, 0

0, 1, 0

-1, 1, 0

-1,0, 0

-1,-1, 0

0,-1, 0

1, -1, 0

1, 0, 0

2, 0, 0

2, 2, 0

0, 2, 0

-2, 2, 0

-2,0, 0

-2,-2, 0

0,-2, 0

2, -2, 0

2, 0, 0

];

%控制点点数

noPtsX = 9;

noPtsY = 2;

noPtsZ = 3;

%权重系数:

weights = [1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 ...

1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 ...

1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 ...

1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 ...

1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 ...

1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 1/sqrt(2) 1 ...

]';

小弟做这个已经一个星期了,现在无任何进展,现在是万分着急,希望高手们给小弟指点一二,小弟将感激不尽~~谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值