当前位置:文档之家› B 样条曲线

B 样条曲线


k个
基函数:以上节点矢量定义分段的Bernstein基函数
2020/3/29
42
分段Bezier曲线
• 各曲线段相对独立性:移动曲线段内的一个控制顶点只 影响该曲线段的形状,对其它曲线段的形状没有影响
• Bezier曲线的算法都可以原封不动地采用 • 其它类型的B样条曲线可通过插入节点的方法转换成分
在每一个区间上至多只有k个基函数非零,它们是:
N i k 1 , k ( t ) N i , k 2 , k ( t )N , i , k ( . t ) ..,
Ni,k(t)在每个 [ti,ti区 k)上 间都是次k 数 1的不 多高 项于 式 从而在整个分 参段 数多 轴项 上式 是
2020/3/29
2020/3/29
20
3阶B-样条基函数图形
N i,3 (t)
Ni,3(t)的图形
2020/3/29
21
3阶B样条曲线示例
t2
tn1
T=[t0,t1,…,tn+1,tn+2,tn+3]
2020/3/29
22
知其然,知其所以然…
• 阶数与次数 • 顶点数 • 节点矢量与定义区间 • 段数 • 控制点及其影响域
30
均匀B-样条曲线
• 均匀节点矢量:所有节点区间长度为大于0的常数 • 均匀B-样条基:在均匀节点矢量上定义的B-样条基 • 均匀B-样条曲线:在均匀B-样条基上定义的曲线
2020/3/29
31
例:三次均匀B样条曲线(1)
t 参数节点向量Tn,4
i
n4 i0
满足:ti
1
ti
0
(i 0,1,..., n 3), 其上可定义3次均匀B 样条曲线
Pi N
i0
tik t tik ti1
i,k (t),t [tk
Ni1,k1(t),i
1, tn1]
0,1,..., n
2020/3/29
24
B-样条基函数的性质
• 局部性 • 权性 • 连续性
2020/3/29
25
B-样条基函数的局部性
Ni,k(t)只在区 [ti,间 tik)上取正值,在其 上它 为区 零间 。
40
3次准均匀B-样条示例
2020/3/29
41
B样条曲线到分段Bezier曲线的转换
• 节点矢量:两端节点具有重复度k,所有内节点重复
度为k-1 注: (k1)mn'
{0,0,...,0,1,1,...,1,2,..., m 1,m 1,..., m1, m , m,...,m}
k个
k 1个
k 1个
局限性:全局控制
2020/3/29
2
B-样条曲线概念
控制顶点
Pi
控制多边形
n
P(t) Pi Nik (t) i0
B-样条基函数
B-样条曲线
2020/3/29
3
控制顶点作用的局部化
• 0次(1阶)曲线
ti
ti+1
0次基函数:Ni,1
(t
)
1 0
2020/3/29
t [ti , ti1) 其它
t
Ni,1(t) Ni,k (t)
1 0
t
tik
1
t [ti ,ti1) 其它
ti ti
N i ,k 1 (t )源自tik t tik ti1
N i 1,k 1 (t ),i
0,1,..., n
2020/3/29
6
关于递推定义的系数
Ni,k1(t)
t ti tik 1 ti
Ni,k (t)
Ni,2 (t)
Ni
,
的图形
2
P0
P1
t0 t1 t2
ti
Pn tn1 tn2
2020/3/29
15
3阶B-样条基函数
• K=3时的基函数
Ni,3 (t )
t ti ti2 ti
Ni,2 (t)
ti3 t ti3 ti1
Ni1,2 (t)
t [ti ,ti3)
t ti ti2 ti
常令: 1,t00构造三次 B样 均条 匀曲 : 线
n
P(t) PiNi,4(t),t[3,n1] i0
2020/3/29
32
三次均匀B样条曲线(2)
此时:Tn,4 {0,1,..., n 4}
1 t [i ,i 1)
Ni,1(t) 0
其它
根据如下的基函数递推公式计算Ni,4 (t):
Ni,k
1次?2次?…?
4

• 1次曲线(2阶)
Ni,2 (t)
Ni
的图形
,2
2次基函数:Ni,2(t)
2020/3/29
2次?3次?…,k+1次基函数?
t
5
B-样条基函数的定义
• de Boor-Cox定义: (约定:0/0=0)
t 给定参数t轴上的节点分割Tn,k
i
n k ,则如下的
i0
Ni,k称为Tn,k上的k阶(k 1次)B样条基函数
36
练习:
• 推导出 [t j ,t j1] 区间上3次均匀B样条曲 线的矩阵表达式。
2020/3/29
37
准均匀B-样条曲线(1)
• 节点矢量:在首末端点处有k次重复度,中间节
点区间长度为大于0的常数,即:
{0,0,...,0,1,2,..., n k 1, n k 2, nk2,...,n k2}
(t)
t k
i 1
N i ,k 1 (t )
i
k
k 1
t
N i 1,k 1 (t ),i
0,1,..., n
2020/3/29
33
三次均匀B样条曲线(3)
注N i: ,k(t)N 0,k(ti) 基函数的平移性
2020/3/29
计算N0,4 (t)
34
三次均匀B样条曲线(4)
则,在[t j ,t j1)(3 j n)上的曲线段为:
• 已知6个控制顶点,请定义出节点矢量均 匀的2次B样条曲线,并回答以下问题。
1. 定义区间是什么? 2. 曲线分为几段? 3. 给出第二段曲线的表达式
2020/3/29
29
B-样条曲线的分类
根据节点矢量的不同形式分类
均匀B样条曲线 准均匀B样条曲线
分段Bezier曲线 非均匀B样条曲线
2020/3/29
第三节 B-样条曲线
本节内容: ▪ B-样条曲线定义 ▪ B-样条曲线性质 ▪ B-样条曲线的离散生成 ▪ 有理B-样条曲线
2020/3/29
1
分段参数多项式曲线分析
• Hermit曲线
– 分段插值曲线 – 全局控制曲线 – 多项式次数与顶点数相关
• Bezier曲线
– 全局控制曲线 – 多项式次数与顶点数相关 – 拼接要求不易满足
2020/3/29
8
支撑区间…
2020/3/29
9
曲线段及控制点
[t0,t1] [t1,t2] [t2,t3] [t3,t4] [t4,t5] [t4,t5]
2020/3/29
10
B-样条曲线的定义
t n 1个控制点 Pi
n i0
及参数节点向量Tn,k
nk
i i0 (ti ti1)
确定如下的k阶(k 1次)B样条曲线:
Ni,3 (t )
t ti ti2 ti
Ni,2 (t)
ti3 t ti3 ti1
Ni1,2 (t)
t ti ti2 ti
( t ti ti1 ti
Ni,1(t)
ti2 t ti2 ti1
N i 1,1 (t ))
ti3 t ti3 ti1
( t ti1 ti2 ti1
Ni1,1(t)
ti3 t ti3 ti2
N i 2,1 (t ))
t ti ti2 t ti3 t t ti1 ti2 ti ti2 ti1 ti3 ti1 ti2 ti1
2020/3/29
18
续前页:
当t [ti2 ,ti3)时:
N i,3 (t )
ti3 t ti3 ti1
tik t tik ti1
Ni1,k (t),i
0,1,..., n
ti ti
2020/3/29
ti+1
t
ti+1
t
ti+1
t
ti+k-1 ti+k-1 ti+k-1
ti+k
ti+k
7
基函数的影响范围
[t0,t1] [t1,t2] [t2,t3] [t3,t4] [t4,t5]
Ni,k(t)的支撑区间为:[ti,ti+k]
j
Ni,k (t) N j,1(t) 1
i jk 1
2020/3/29
27
B-样条基函数的连续性
N 'i,k
(t)
(k
1)
Ni ,k 1 (t ) tik1 ti
Ni1,k1(t)
tik
ti1
Ni,k (t)在l重节点处至少为k 1 l次参数连续。
2020/3/29
28
问题:3阶B样条曲线生成
n
P(t) Pi Ni,k (t),t [tk1, tn1] 共n-k+2段 i0
B-样条曲线示例
2020/3/29
11
1阶B-样条基函数
K=1时的基函数
1 Ni,1(t) 0
相关主题