Bezier曲线B样条曲线
or Tt 3i j
直线斜率:
dy dy dt y ' (t ) 1 ' dx dx dt x (t ) 3
5.2 Bezier、B样条曲线的生成
Bezier、B样条曲线的生成
Bezier曲线和B样条曲线都是一种自由曲线。自由曲线 是指一条无法用标准代数方程来描述的曲线。在实际中,自 由曲线应用十分广泛,比如轮船身外形放样时的样条曲线, 汽车、飞机及各种产品的外形曲线都可以看成是自由曲线。 计算机产生这种曲线的方法通常有两类: (1)插值的方法:要求生成的曲线通过每个数据点,即 型值点。曲线插值方法有多项式插值、分段多项式插值和 样条函数插值等。 (2)拟合的方法:要求生成曲线靠近每个数据点(型值 点),但不一定要求通过每个点。拟合的方法一般有最小 二乘法、 Bezier方法和B样条方法等。 下面主要介绍工程上流行应用的Bezier曲线和B样条曲线。
u1
Z
Y
0
p(u1)
u2
p( u2)
u
注:这里讨论的动点轨迹 是在三维空间中所表 示的曲线,平面轨迹 曲线只是一种特殊情 况
X
5.1 曲线的参数表示
向量P与时间t有关:P=P(t),就是说P是时间t的函数。用 坐标表示为 :
x x(t ) y y( t ) z z(t )
若把参数t 换成一个普通意义的参数u,则曲线的参数形式 为:
P [ x ( u) y ( u) z ( u) ]
x 3u 例如: y u1 式。 z 2u 3
u [0,1] 是一条空间曲线的参数形
注:这是一条以点(0,1,3)为起点,(3,2,5)为终点的线段
(1) Bezier曲线的定义
Bezier曲线是由一组折线来定义的,且第一点和最后 一点在曲线上,第一条和最后一条折线分别表示出曲线在起 点和终点处的切线方向。 Bezier曲线通常由特征多边形的 n+1个顶点定义一个n次多项式,即给定空间n+1个点的位置 矢量Pi(i=0,1,2,…,n),则Bezier参数曲线上各点坐标 的参数方程式(插值公式)是:
5.2 Bezier、B样条曲线的生成
曲线的形状依赖于该多边形的形状,即由一组多边折线(该 多边折线称为特征多边形)的顶点唯一地定义出来,且只有 该多边形第一个顶点和最后一个顶点在曲线上。 Bezier曲 线及其特征多边形如下图
三次Bezier曲线和特征多边形
注:上图是由四个控制点形成的三次Bezier曲线,曲线的形 状依附于该特征多边形的形状。且特征多边形的第一条边 线和最后一条边线分别表示曲线在第一个顶点和最后一个 顶点的切线方向
第5章 曲线与曲面的生成与计算
5.1 5.2 5.3 曲线的参数表示 Bezier、B样条曲线的生成 曲面的参数表示
5.4
Bezier、B样条曲面的生成
曲线与曲面的生成与计算
曲线和曲面是计算机图形学中研究的重要内容之一,它们 在实际工作中有着广泛的应用。例如: 实验、统计数据如何用曲线表示。 设计、分析、优化的结果如何用曲线、曲面表示。 汽车、飞机等具有曲面外形的产品怎样进行设计,才 能使之美观且物理性能最佳。 由于实际问题不断对曲线、曲面有许多新的要求,近二十 年来,有关曲线曲面的研究文章、专著层出不穷。在实际工 作中,人们常用曲线有Bezier、B样条、非均匀有理B样条 (Nurbs)、圆锥曲线、等距线、过度线等;常用的曲面有 Bezier曲面、 B样条曲面、Coons曲面等。
5.2 Bezier、B样条曲线的生成
贝塞尔(Bezier)曲线
Bezier曲线是由法国雷诺汽车公司的P.E.Bezier于20世 纪70年代初为解决汽车外型设计而提出的一种新的参数表 示法,这种方法的特点是:控制点的输入与曲线输出之间 的关系明确,使设计人员比较直观地估计给定条件与设计 出的曲线之间的关系。当设计人员(用户)使用交互手段 改变输入控制点,就能很方便地在屏幕上改变拟合曲线的 形状与代表它的多项式的次数以迎合设计要求。 Bezier曲线是指用光滑参数曲线段逼近一折线多边形, 它不要求给出导数,只要给出数据点就可以构造曲线,而 且曲线次数严格依赖确定该段曲线的数据点个数。
5.2 Bezier、B样条曲线的生成
Bezier曲线分为开放型和封闭型两类:首尾控制点不想同 为开放型,首尾控制点想同为封闭型。如下图所示:
p2 p2 p1 p 7 p4
p1 p4
开放型Bezier曲线
p3 p6
p3 p5
封闭型Bezier曲线
图 Bezier曲线的类型
5.2 Bezier、B样条曲线的生成
曲线与曲面的生成与计算
在本章中,我们将主要介绍曲线曲面的参数表示,Bezier, B样条曲线以及Bezier、B样条曲面的概念和特征。 在具体讲述上面知识之前,有必要了解一下如下几个概 念的区别和联系。
1 曲线绘制:这类问题归结为已知曲线方程,要求画出曲线
2 曲线插值:由实验、观测或计算得到了若干个离散点组成的点列,要 求用光滑的曲线把这些离散点连结起来。 3 曲线逼近:在曲线形状设计中,给定了折线轮廓,要求用一曲线逼近 这个折线轮廓,这类问题称为曲线逼近。
(注:曲线插值与曲线逼近的区别:逼近不要求曲线通过数据点)
4 曲线拟合:曲线、曲面的设计过程中,用插值或逼近方法是生成的曲
线、曲面达到某些设计要求。
6.1 曲线的参数表示
曲线的参数表示
曲线、曲面可以有显式、隐式和参数表示,但从计算机 图形学和计算几何的角度来看,还是使用参数表示较好, 因为采用参数方法表示曲线和曲面,可以将其形状从特定 坐标系的依附性中解脱出来,很容易借助计算机得以实现。 一个动点的轨迹可以用位置向量P来描述,如下图所示:
5.1 曲线的参数表示
参数的含义: 时间,距离,角度,比例等等; 规范参数区间[0,1]:归一化; 矢量表示: 切矢量(导函数): 例:已知直线段的端点坐标: 段的参数表达式为:
,则此直线
相应的x,y坐标分量为:
' ' 1 p ( t ) [ x ( t ) y (t )] [3 1] 切矢量为: