伯恩斯坦多项式的性质及其应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Bernstein 多项式的性质及其应用
作者:张* 指导教师:汪**
摘要 Bernstein 多项式的性质在B ézier 曲线上的应用更加的广泛,鉴于此,必须先给出Bernstein
多项式的性质,然后再得出B ézier 曲线的性质和应用。
在工程应用领域,从设计要求出发,人们希望使用某种逼近方法,而非传统的插值方法,该法能模仿曲线、曲面的设计过程,又便于设计者使用。
B ézier 于1962年提出了以逼近为基础的曲线曲面设计系统,名为UNISURF,随后,Forrest,Gordon 和Riesenfeld 等对B ézier 方法作了深入研究,揭示了B ézier 方法与Bernstein 多项式的联系,从而使其具有更坚实的理论基础。
本文旨在介绍Bernstein 多项式,给出其性质,结合B ézier 曲线的性质,得出Bernstein 多项式在B ézier 曲线上的应用。
关键词 Bernstein 多项式 B ézier 曲线 逼近
1 引言
用多项式一致逼近连续函数是函数逼近论中的重要结果,在科学与工程中有广泛的应
用。
而Bernstein 多项式是不可缺少的重要工具。
1.1 Bernstein 多项式
定义:设
f 是[0,1]上的函数,n *
∈
,约定0
1=.称[0,1]上的多项式函数
()()()()(1)n
n k k n n k n k B f x B f x f x x k n -=⎫⎛==-⎪ ⎝⎭∑;
为
f
的第n 个Bernstein 多项式.应当将n B 视为一个映射,它把[0,1]上的函数映为[0,1]
上的多项式函数.称n B 为第n 个Bernstein 算子.
命题 若,f g 是[0,1]上的函数,,αβ是常数,I 是[0,1]上的恒等映射,则
(1) (
)n B f 的次数n ≤;
(2) ()()()n n n B f g B f B g αβαβ+=+;(线性性质) (3) ()n B I
I αβαβ
+=+.
证明: (1),(2)显然成立,故只需证(3).
0(1)()(1)[(1)]1n
n k k n n k n B x x x x x k -=⎫
⎛=-=-+=⎪ ⎝⎭
∑,这说明(1)1n B =.
0()()(1)n
n k k
n k n k B I x x x k n -=⎫⎛=-⎪ ⎝⎭∑1(1)111(1)1n
n k k k n x x x k ----=-⎫⎛=-⎪
-⎝⎭
∑ 1
101(1)n n j j
j n x x x j ---=-⎫⎛=-⎪ ⎝⎭
∑1[(1)]n x x x x -=-+=,这说明()n B I I =. 再由(1),(2)便得到 ()()(1)n n n B I
B I B I αβαβαβ
+=+=+.□
引理 设
f 是[0,1]上的函数.若引入[0,1]上的辅助函数
()x ϕ111n n n f x f x n
n n --⎡⎤
⎫⎫⎛⎛=+- ⎪ ⎪⎢⎥⎝⎝⎭⎭⎣⎦,则它们的Bernstein 多项式之间满足关系
1(
)()()()n n B f x B x ϕ-'=.
证:
1
1!
()()()(1)(1)!()!n
n k k n k k n B f x f x x n k n k --='=---∑1
10
!
()(1)!(1)!n n k k k k n f x x n k n k ---=----∑
1
101!
(
)(1)!(1)!
n n j j j j n f x x n j n j ---=+=---∑110
!
()(1)!(1)!n n j j j j n f x x n j n j ---=----∑
1
101!()()(1)!(1)!n n j j j j j n f f x x n n j n j ---=+⎡⎤=--⎢⎥--⎣
⎦∑
1101
(1)!()()(1)!(1)!n n j j j j j n n f f x x n n j n j ---=+-⎡⎤=--⎢⎥--⎣
⎦∑
1
110
1()(1)()()1n n j j
n j n j x x B x j n ϕϕ----=-⎫⎛=-=⎪
-⎝⎭∑.□ 1.2 定理 ( Bernstein 多项式的逼近性质)
设
f
是[0,1]上的连续函数(或1C 函数).那么,0ε∀>,N *
∃∈
使得当n N
>时,[0,1]x ∀∈都成立
()()()n B f x f x ε-<(或()()()n B f x f x ε''-<).
证: (1) 记01
max ()x M
f x ≤≤=.0ε∀>,取0δ>,使得当,[0,1],x y x y δ∈-<时
成立
()()2
f x f y ε
-<
;再取N *
∈
,使得当n N >时成立
2
M
n εδ
<. 于是,当n N >时,[0,1]x ∀∈都成立
0()()()()()(1)n
n k k
n k n k B f x f x f f x x x k n -=⎫
⎛⎡⎤-=--⎪ ⎢⎥⎣⎦⎝⎭∑
()()(1)()()(1)n k k n k k
k
k
x x n
n
n n k
k
f f x x x f f x x x k k n n δδ---<-≥⎫⎫⎛⎛≤
--+--⎪⎪ ⎝⎝⎭
⎭
∑
∑
222
2(1)()(1)2n k
k
n k k
k
k
x x n
n
n n M x x k nx x x k k n δδεδ---<-≥⎫
⎫⎛⎛≤
-+
--⎪⎪ ⎝⎝⎭
⎭
∑
∑
202()(1)2n n k k k n k nx x x k n ε
ε-=⎫⎛<+--⎪ ⎝⎭
∑.
对以t 为自变量的函数()0(1)(1)n
n k t k nx nxt t n k n x e e x e k ---=⎫⎛-=-+⎪ ⎝⎭
∑求
2阶导数,
由Leibniz 公式得到
2
()
0()(1)n
n k t k nx k n k nx x e k --=⎫⎛--⎪ ⎝⎭
∑ 222(1)1(1)2(1)nxt t n nx t t n n x e x e n xe x e ---=-+--+ (1)1(2)2(1)(1)(1)nx t t n nx t t n ne x e n n e x e ----+-++--+,
或
2
0()(1)n
n k tk k n k nx x e k -=⎫⎛--⎪ ⎝⎭
∑2221
(1)2(1)t n t t n n x x e n xe x e -=-+--+ 122(1)(1)(1)t t n t t n ne x e n n e x e --+-++--+.
令ln t
x =便得到
20()(1)n
n k k k n k nx x x k -=⎫⎛--⎪ ⎝⎭
∑222(1)n x nx n n x =-++- [1(1)]nx nx n x =-++-(1)4
n
nx x =-≤
. 于是, ()()()n B f x f x -22422
n n ε
εεε
ε<+
=+=. (2).为了估计
()()()n B f x f x ''-,只需估计出1()()()()n n B f x B f x -''-和
1()()()n B f x f x -''-即可.记111()n n x n f
x f x n n n ϕ--⎡
⎤
⎫
⎫⎛⎛=+-
⎪
⎪⎢⎥⎝⎝⎭⎭⎣
⎦
,由引理得到
1()()()()n n B f x B x ϕ-'=1
101
()()1(1)1n n j j j j j f f n n n x x j n ---=+⎡⎤--⎢⎥⎫⎛=-⎪⎢⎥⎝
⎭⎢⎥⎣⎦
∑. 1
101()(1)n n j j
j j n f x x j ξ---=-⎫⎛'=-⎪ ⎝⎭
∑, 1j j j n n ξ+<<(0,1,,1j n =-). 故 1()()()()n n B f x B f x -''-1
10
1()(
)(1)1n n j j
j j n j f f x x j n ξ---=-⎫⎛''≤--⎪ -⎝⎭
∑. 0ε∀>,取0δ>,使得当,[0,1]x y ∈,x y δ-<时成立
()()2
f x f y ε
''-<
;再
取N
*
∈
满足
1
N
δ<,则当n N >时,便有11j j n n n δ-<-≤--1j
j n ξ<-- 11
1j j n n n δ+<
-≤<-,故0,1,j ∀=,1n -,成立()(
)12
j j f f n ε
ξ''-<-. 于是,当n N >时,[0,1
]x ∀∈都成立 1()()()()n n B f x B f x -''-1
101(1)22n n j j
j n x x j εε---=-⎫⎛<-=⎪
⎝⎭
∑.
如果取
N *
∈
更大一些,还可使得当
n N
>时,
[0,1]
x ∀∈都成立
1()()()2
n B f x f x ε
-''-<
.
于是,
()()()n B f x f x ''-11()()()()()()()n n n B f x B f x B f x f x --''''≤-+-
2
2
ε
ε
ε<
+
=.□
2 下面介绍给出B ézier 曲线的定义、性质及其应用 2.1 Bézier 曲线定义
0()()n
k n k P x P B x ==∑,01x ≤≤。
k P 构成该曲线的特征多边形,
()n B x =0
()(1)n
n k k k n k f x x k n -=⎛⎫
- ⎪⎝⎭∑是Bernstein 多项式
2.2 B ézier 曲线的类型
线性B ézier 曲线
给定点01P P 、,线性B ézier 曲线只是一条两点之间的直线。
这条线由下式给出:
01001()()(1),[0,1]B x P P P x x P xP x =+-=-+∈
且其等同于线性插值
二次方B ézier 曲线
二次方B ézier 曲线的路径由给定点012P P P 、、的函数()B x 追踪:
()()[]22012(1)21,0,1B x x P x x P x P x =-+-+∈
TrueType 字型就运用了以B ézier 样条组成的二次B ézier 曲线。
三次方B ézier 曲线
012P P P 、、、3P 四个点在平面或在三维空间中定义了三次方B ézier 曲线。
曲线起始于0P 走向1P ,并从2P 的方向来到3P 。
一般不会经过1P 或P ;这两个点只是在那里提供方向
资讯。
0P 和1P 之间的间距,决定了曲线在转而趋进3P 之前,走向2P 方向的“长度有多长”。
曲线的参数形式为:()()()[]2
3
2
33
0120(1)3131,0,1B x P x Px x P x x P x x =-+-+-+∈
现代的成象系统,如PostScript 、Asymptote 和Metafont ,运用了以B ézier 样条组成的三次B ézier 曲线,用来描绘曲线轮廓。
一般化
n 阶B ézier 曲线可如下推断。
给定点01n P P P 、、、,B ézier 曲线即
()()()()()()[]11001
1011011111,0,1011n
n i n n i n n
i n n i n n n n n B x P x x P x x P x x P x x P x x x i n n ----=⎛⎫⎛⎫⎛⎫⎛⎫⎛⎫=-=-+-++-+-∈ ⎪ ⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭
⎝⎭⎝⎭
∑例如5n =:
()()()()()()5
4
3
2
2345
012345
151********B t P t Pt t Pt t Pt t Pt t Pt =-+-+-+-+-+[],0,1t ∈。
如上公式可如下递归表达:用01
n
P P P B ()x 表示由点01n P P P 、、、所决定的B ézier 曲
线。
则()()()()()01
01
1
01
1n
n n
P P P P P
P P P
P B x B x x B x xB x -==-+,为n 阶的B ézier 曲线,即
双1n -阶B ézier 曲线之间的插值。
线性B ézier 曲线函数中的x 会经过由0P 至1P 的()B x 所描述的曲线。
例如当x =0.25时,()B x 即一条由点0P 至1P 路径的四分之一处。
就像由0至1的连续
x ,()B x 描述一条由0P 至1P 的直线。
(线性B ézier 曲线的结构)
二次曲线
为建构二次B ézier 曲线,可以中介点0Q 和1Q 作为由0至1的x : 由0P 至1P 的连续点0Q ,描述一条线性B ézier 曲线。
由1P 至2P 的连续点1Q ,描述一条线性B ézier 曲线。
由0Q 至1Q 的连续点()B t ,描述一条二次B ézier 曲线。
(二次B ézier 曲线的结构)
高阶曲线
为建构高阶曲线,便需要相应更多的中介点。
对于三次曲线,可由线性B ézier 曲线描述的中介点012Q Q Q 、、,和由二次曲线描述的点0R 、1R 所建构
(三次B ézier 曲线的结构)
对于四次曲线,可由线性B ézier 曲线描述的中介点0123Q Q Q Q 、、、,由二次B ézier 曲线描述的点012R R R 、、,和由三次B ézier 曲线描述的点01S S 、所建构:
(四次B ézier 曲线的结构)
设0P 、1P 、2P 是一条抛物线上顺序三个不同的点。
过0P 和2P 点的两切线交于1P 点,在P 点的切线交01P P 和21P P 于Q 和R ,则抛物线的三切线定理 是
011
2P Q PR
QP QP QR RP ==
当
P 和
2
P 固定,引入参数
x
,令上述比值为
()()()()0112:1, 1, R 1 1x x Q x P xP x P xP P x Q xR -=-+=-+=-+,
, 当x 从0变到1,第一、二式就分别表示控制二边形的第一、二条边,它们是两条一次Bézier 曲线。
将一、二式代入第三式得:()()2
2
012121x P x x P x P -+-+ , 当x 从0变到1时,它
表示了由三顶点0P 、1P 、2P 三点定义的一条二次Bezier 曲线。
并且表明:这二次Bezier 曲线P 0,2可以定义为分别由前两个顶点(P 0,P 1)和后两个顶点(P 1,P 2)决定的一次Bezier 曲线的线性组合。
依次类推,由四个控制点定义的三次Bezier 曲线P 0,3可被定义为分别由(P 0,P 1,P 2)和(P 1,P 2,P 3)确定的二条二次Bezier 曲线的线性组合,由(n+1)个控制点Pi(i=0,1,...,n)定义的n 次Bezier 曲线0,n P 可被定义为分别由前、后n 个控制点定义的两条(n-1)次Bezier 曲线P 0,n-1与P 1,n-1的线性组合。
利用Bezier 曲线的性质,张量积形式的Bezier 曲面的定义可以如下定义。
两组正交的Bezier 曲线的控制顶点可作为矩形网格。
设P ij (i=0,…,n; j=0,…,m)为空间点列,这些点生成的n+1行、m+1列的矩形网格称为特征网格,其中在第i+1行、第j+1列的点是P ij 。
相应的m ⨯n 次张量积形式的Bezier 曲线为
,,,00
(,)()()m n
i j i m j n i j P u v P B u B v ===∑∑ ,[0,1]u v ∈
()0,00,10,0,1,0
1,12,1,0,1,,,0
,1
,,...()...()(,)(),(),...,()..................()n n n n m m m m m m m n n n P P P B v P P P B v P u v B u B u B u P P P B v ⎛⎫⎛⎫
⎪⎪
⎪⎪
= ⎪⎪ ⎪⎪ ⎪⎪⎝⎭⎝⎭
其中,,()(1)
i i
k i
i k k B z C z z -=-是k 次Bernstein 基函数。
在一般实际应用中,n ,m 不大
于4。
Bezier 曲线的变差缩小性质不能推广到曲面。
但是,其它许多性质可推广到Bezier
曲面。
2.3 Bézier 曲线的性质
从零次
Bernstein
多项式0,0()1B x =,一次
Bernstein
多项式
0,1()1B x x =-1,1,()B x x =立即可知,零次Bézier 曲线就是一个顶点0b ,一次Bézier 曲线
就是两顶点0b 与1b 的线性插值,即连接两顶点0b 与1b 的直线。
二次及二次以上的Bézier 曲线有如下性质。
1.Bézier 曲线的首末端点正好分别是Bézier 多边形的首末顶点,即
()()00,1.n P b P b ==
2.Bézier 曲线在首末端点的k 阶导数与Bézier 多边形的首末k 条边有关,与其他边无关。
这表明曲线在首末端点分别与首末条边相切。
性质1与2是Bézier 曲线的基本性质。
3.几何不变性与仿射不变性。
4.“对称性”将Bézier 多边形顺序取反,定义同一条曲线,仅曲线方向取反。
5.凸包(convex hull)性质:一个点集的凸包被定义为由该点集的元素形成的所有的凸组合的集合。
可以这样来想象确定平面上点集的凸包:在点集的每一个元素位置上打上钉子,然后用一根封闭的橡皮绳套在所有钉子的外面,橡皮绳因弹性自然收缩形成封闭的多边形区域,略去钉子与橡皮绳的粗面,这个包括边界在内的多边形区域就是该点集的凸包。
对于空间分布的点,则可想象一封闭的橡皮膜包住这些点,任其弹性收缩所形成的的空间区域即为其凸包。
Bézier 曲线的凸包性质是指Bézier 曲线恒为于它的控制顶点的凸包内,这一性质确定了Bézier 曲线的所在范围,使得设计人员预先就心中有数。
它还被用于分割求交:如果用Bézier 形式表示的两相交元素的控制顶点的凸包不相交,则可定义它们不相交。
6.变差减少(variation diminishing ) 性质(又称VD 性质):任一平面与Bézier 曲线的交点数不会超过它与控制多边形的交点数,但包含整个控制多边形的平面除外。
这一性质导致如下的凸性定理:如定义平面Bézier 曲线的控制多边形是凸的(指连接首末顶点构成的封闭多边形为凸的,相重边情况除外),则所定义的平面Bézier 曲线也是凸的。
7.移动n 次Bézier 曲线的第j 个控制顶点j b ,将对曲线上参数为j x n =的那点j P n ⎛⎫ ⎪⎝⎭
处发生最大的影响。
这是因为相应的Bernstein 多项式j
x n
=
处达到最大值。
若使顶点j b 引入偏移矢量j δ,则由新Bézier 多边形定义的Bézier 曲线将是
()()()
*j j P x P x B x δ=+,在
j P n ⎛⎫ ⎪⎝⎭
处发生的最大影响为
()*j j j j P P P B x n n δ⎛⎫⎛⎫
∆=-= ⎪ ⎪⎝⎭⎝⎭
.
反之,欲使曲线()P x 在j P n ⎛⎫
⎪⎝⎭
处移动P ∆,则必须使顶点j b 引入偏移矢量()
j j P
B x δ∆=
.
可见,这是一个对交互设计Bézier 曲线很有用的性质。
2.4 Bezier 曲线的应用
“Bezier ”工具在photoshop 中叫“钢笔工具”;在CorelDraw 中翻译成“Bezier 工具”;而在Fireworks 中叫“画笔”。
它是用来“画线”造型的一种专业工具。
当然还有很
多工具也可以完成画线的工作,例如大家常用的photoshop 里的直线、喷枪、画笔工具,Fireworks 里的直线、铅笔和笔刷工具,CorelDraw 里的自由笔,手绘工具等等.
用“Bezier ”工具无论是画直线或是曲线,都非常简单,随手可得。
其操作特点是通过用鼠标在面板上放置各个锚点,根据锚点的路径和描绘的先后顺序,产生直线或者是曲线的效果。
我们都知道路径由一个或多个直线段或曲线段组成。
锚点标记路径段的端点。
在曲线段上,每个选中的锚点显示一条或两条方向线,方向线以方向点结束。
方向线和方向点的位置确定曲线段的大小和形状。
移动这些元素将改变路径中曲线的形状,可以看右图。
路径可以是闭合的,没有起点或终点(如圆圈),也可以是开放的,有明显的端点(如波浪线)。
2.4.1
B ezier 曲线的应用更多的体现在作图上,下面介绍几种常见的B ezier 曲线在MATLAB 上实现的算法。
1.在MATLAB 中键入下面程序: clear ,clc; format long x=(0:0.01:20)'; y_0=besselj(0,x); plot(x,y_0);grid on; axis([0,20,-1,1]);
title('0阶贝塞尔函数曲线图'); xlabel('Variable X'); ylabel('Variable Y'); 得到下面的曲线
02468
101214161820
-1
-0.8-0.6-0.4-0.200.20.40.60.8
10阶贝塞尔函数曲线图
Variable X
V a r i a b l e Y
(0阶贝塞尔函数曲线图)
2. 在MATLAB 中键入下面程序:
clear ,clc;
format long
x=(0:0.01:20)';
y_1=besselj(1,x);
plot(x,y_1);grid on;
axis([0,20,-1,1]);
title('一阶贝塞尔函数曲线图');
xlabel('Variable X');
ylabel('Variable Y');
得到下面的曲线
024681012
14161820-1-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
1
一阶贝塞尔函数曲线图
Variable X V a r i a b l e Y
(一阶贝塞尔函数曲线图)
3. 在MATLAB 中键入下面程序:
clear ,clc;
format long
x=(0:0.01:20)';
y_2=besselj(2,x);
plot(x,y_2);grid on;
axis([0,20,-1,1]);
title('二阶贝塞尔函数曲线图');
xlabel('Variable X');
ylabel('Variable Y');
得到下面的曲线
024681012
14161820-1-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
1
二阶贝塞尔函数曲线图
Variable X V a r i a b l e Y
(二阶贝塞尔函数曲线图)
2.4.2
Bezier 广泛应用于外形设计的参数曲线逼近方法,它通过对一些特定点的控制来控制曲线的形状,我们称这些点为控制顶点。
下面我们通过找控制点的方法绘制2次Bezier 曲线,即2n =的情形。
此时有3个顶点012,,P P P ,
为了在MATLAB 中计算方便,我们将Bezier 曲线的一般表示式改写为矩阵形式,我们得到:
()()()20
2!1!2!k k k
k P x P x x k k ==--∑ ()()22012
121x P x x P x P =-+-+002222112212121,22,,,1220100P P x x x x x P x x P P P -⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎡⎤⎡⎤=-+-+=-⎣⎦⎣⎦⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦
这样,对于确定的012,,P P P ,我们取定[]0,1区间中的x 值后,即可计算()P x 的值,注意,()P x 是与k P 对应的,如果k P 是平面上的点即2维坐标,则()P x 也是2维坐标,如
果k P 是空间的点即3维坐标,则()P x 也是3维坐标,因此,对于每一组确定的012,,P P P ,即可绘制出一条2次Bezier 曲线。
完成平面2次Bezier 曲线的MATLAB 程序如下:
先编制完成Bezier 曲线计算和绘制的函数bezier2.m ,其参数是控制顶点的坐标。
% Bezier Square Curve Ploter
% This file will create a Bezier square curve and dispay the plot. The parameter is the Vertex matrix.
function [X] = bezier2(Vertex)
BCon=[1 -2 1;-2 2 0;1 0 0]; % our 3 X 3 constant Matrix
for k = 1:1:50 % for loop 1 - 50 insteps of 1
par = (k - 1)/49;
XY(k,:) = [par^2 par 1]*BCon*Vertex; % yep! we have created our data end
% we will display the vertices and the curve using MATLABs built-in graphic functions
clf % this will clear the figure
plot(Vertex(:,1),Vertex(:,2),'ro',XY(:,1),XY(:,2),'b-')
% this will create a plot of both the Vertices and curve, the vertices will be red o while the curve is blue line
% if you are impatient you can save the file and run the script agin in MATLAB line(Vertex(:,1),Vertex(:,2),'color','g') % add the control polygon.
xlabel(' x value')
ylabel ('y value')
title('Square Bezier Curve')
legend('Vertex','Curve','Control Polygon') % you can move the legend on the plot
然后,在命令行定义Bez2Vertex=[ 0 0 ; 0.3 0.7 ; 1.0 0.2],即定义
()()()0120,0,0.3,0.7, 1.0,0.2,
P P P ===则可得到如下的图形:
通过改变控制顶点的坐标,即可得到所需要的2次Bezier 曲线。
接着我们讨论3次Bezier 曲线,我们也采用将表达式改写为矩阵形式的方法,我们得到:
()()()()()333230230013232323230132233!1131!3!
331,363,33,13313630,,,133001000k k k
k P x P x x x P x x P x P k k P P x x x x x x x x x P P P P x x x P P -==-=-+-+-⎡⎤⎢⎥
⎢⎥⎡⎤=-+-+-+-+⎣⎦⎢⎥⎢⎥⎣⎦
--⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎡⎤=⎣⎦⎢⎥⎢⎥-⎢⎥⎢⎥⎣⎦⎣⎦∑
这样,我们就可以用与前面几乎相同的程序来绘制3次Bezier 曲线了。
如设
()()()()01230,0,0.3,0.7,0.5,0.7, 1.0,0.4,
P P P P ====则可得到如下的3次Bezier 曲线。
注意:图中“0”表示控制顶点,直线表示控制多边形,曲线即为Bezier 曲线。
当我们需要的曲线较为复杂时,仅用一段Bezier 曲线难以表示,此时,我们可以采用拼接的方法,通过重复使用较为简单的绘制方法来绘制出较为复杂的图形。
在拼接时,我们首先要求曲线是连续的,我们以二段3次Bezier 曲线的拼接为例来讨
论。
设控制顶点分别为0123,,,P P P P 和0123,,,Q Q Q Q ,则当3P 与0Q 重合时,即能保证曲线
连续,我们称两段曲线这样的连续为零阶几何连续,在此基础上,如果我们保证3P 与0Q 重合,且23
P P 和01Q Q 均不为零且同向,则我们可以保证曲线在30P Q =处是光滑的,此时,我们称该曲线在30P Q =处为一阶几何连续。
在稍微复杂一点的条件下,我们还可以使曲线在拼接处有相同的曲率。
结束语
通过上述的探讨与分析,已经初步掌握了Bernstein 多项式与Bezier 曲线的性质以及其应用,这为学习自由曲面奠定了基础。
参考文献
[1] 郭存娣,Bernstein多项式与其所逼近的连续函数[J].西北纺织工学院学报,2000年:第14卷,第3期
[2] 谢林森,关于Bernstein多项多的线性组合[J].数学研究与评论,1995年,15卷,第4期
[3] 严兰兰、宋来忠,正则Bezier曲线的广义偏距曲线及其MATLAB实现[J]. 三峡大学学报(自然科学版),2006年:第28卷,第4期
[4] 华东师范大学数学系主编,《数学分析》[M],高等教育出版社,2001年版
[5] 施法中,计算机辅助几何设计与非均匀有理B样条[M]. 北京,高等教育出版社,2001
[6] 朱心雄等,自由曲线曲面造型技术[M].北京,科学出版社,2000
[7] H. Caglar and A. N. Akansu, "A Generalized Parametric PR-QMF Design Technique Based on Bernstein Polynomial Approximation," IEEE Transactions on Signal Processing, vol. 41, no. 7, pp. 2314–2321, July 1993.
[8]Korovkin, P.P., "Bernstein polynomials", in Hazewinkel, Michiel, Encyclopedia of Mathematics, Springer, ISBN 978-1-55608-010-4, 2001
Properties and application of Bernstein polynomials
Author:ZHANG Yi Supervisor:WANG Zhihua
Abstract:The nature of the Bernstein polynomials in Bézier curve is mor e widely.Given this,must first be given the nature of the Bernstein polynomials.And then come to the nature and application of Bézier curves.In the fie ld of engineering applications,from design requirements.People want to use some kind of approximation methods ,instead of the traditional interpolation method.The method is able to mimic the curves, surfaces of the design process, but also to facilitate the designers to use.Bessel is put forward curve and surface which design system based on approximations in 1962 ,called UNISURF.Subsequent,Forrest, Gordon and Riesenfeld made an in-depth study of the Bézier method.Reveals the Bezier method contact
Bernstein polynomial.So that it has a solid theoretical foundation,This article aims to introduce Bernstein polynomial.Given its nature Combined with the nature of the Bézier curve ,draw the application of Bernstein polynomials on the Bezier curve.
Key Words:Bernstein polynomial the bezier curve approximation。