B-Spline曲线的导数

样条曲线定义:
C(u)=∑i=0nNi,p(u)Pi C(u)=\sum^n_{i=0}N_{i,p}(u)P_i C(u)=i=0nNi,p(u)Pi

基函数的导数为:
dNi,p(u)du=Ni,p′(u)=pNi,p−1(u)ui+p−ui−pNi+1,p−1(u)ui+p+1−ui+1 \frac{dN_{i,p}(u)}{du}=N^{'}_{i,p}(u)=\frac{pN_{i,p-1}(u)}{u_{i+p}-u_i}-\frac{pN_{i+1,p-1}(u)}{u_{i+p+1}-u_{i+1}} dudNi,p(u)=Ni,p(u)=ui+puipNi,p1(u)ui+p+1ui+1pNi+1,p1(u)
则:
C′(u)=∑i=0n−1Ni+1,p−1(u)QiQi=p(Pi+1−Pi)ui+p+1−ui+1 C^{'}(u)=\sum^{n-1}_{i=0}N_{i+1,p-1}(u)Q_i\\ Q_i=\frac{p(P_{i+1}-P_i)}{u_{i+p+1}-u_{i+1}} C(u)=i=0n1Ni+1,p1(u)QiQi=ui+p+1ui+1p(Pi+1Pi)

所以,B-Spline曲线的导数也是B-Spline曲线,其阶数相对于原始样条曲线减一,控制顶点为Qi.

几个要点:

导数的曲线节点向量是原始节点向量去除第一个和最后一个节点构成的.
控制顶点需要重新计算,且个数是原始控制顶点个数减一.
将新生成的导数样条曲线带入到 deboor递推算法中,即可计算相应导数值.
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值