参数曲面的切平面和法矢量ComputerGraphics_第1页
参数曲面的切平面和法矢量ComputerGraphics_第2页
参数曲面的切平面和法矢量ComputerGraphics_第3页
参数曲面的切平面和法矢量ComputerGraphics_第4页
参数曲面的切平面和法矢量ComputerGraphics_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ComputerGraphics第十章 Bezier曲线曲面CCoommppuutteeGGrraapphhiiccrsBezier曲线曲面操作实例点击右面图标可以自己操作ComputerGraphics综述曲线曲面的表示是计算机图形学的重要研究内容之一。在计算机图形学中,常用的曲线曲面的类型有·

Bézier曲线曲面·

B样条曲线曲面·

孔斯曲面P0P1P2P3ComputerGraphics优点1曲线曲面的形状不依赖于坐标系的选择2人机交互直观易于计算易于拼接造型灵活等·

本章讨论Bézier曲线曲面的重要性质和生成算法。P0P1P2P2P1P0

x(b)原图三点绕原点逆转45度

后过三点的参数二次多项式图形xyy(a)过图示三点的参数二次多项式图形ComputerGraphics10.1

曲线曲面的基础知识曲线、曲面的表示形式 参数表示:非参数表示:(在CG&CAGD角度看,好一些)显示表示隐式表示曲线和曲面的基础知识位置矢量、切矢量、法矢量、法平面、曲率以及连续性等ComputerGraphics10.1.1

曲线的表示·1.显式表示一个坐标变量能够显式地表示为另一个变量的函数平面曲线显式表示的一般形式是一条直线方程每一个x值只对应一个y值用显式方程不能表示封闭或多值曲线ComputerGraphics2

隐式表示平面曲线隐式表示的—般形式:例如,二次隐式方程的—般形式可写成(10.1)该隐式方程可以表示抛物线、双曲线和椭圆等。三维空间曲线的隐式表示式为交面式:(10.2)曲线的非参数表示存在的问题是:①与坐标系相关;②会出现斜率为无穷大的情况(如垂线);③非平面曲线难用常系数的非参数化函数表示,例如式(10.2);10.1.1

曲线的表示ComputerGraphics3

参数表示曲线的参数表示是指将曲线上各点的坐标变量显式地表示成参数的函数形式。若取参数为,则曲线的参数表示为,

(10.3)其中

分别为

的显式函数,即每一个

对应空间一个点通常将参数区间规范化为[0,1]。参数方程中的参数可以代表多种不同的量,如时间、角度等。连接

两点的直线段的参数方程可写为10.1.1

曲线的表示ComputerGraphics3

参数表示一条参数曲线的表示形式并不是惟一的,例如在第一象限内的单位圆弧可表示成其中:取角度θ为参数时,x和y的关系如图10.1(a)所示;取t为参数时,x和y的关系如图10.1(b)所示,其中θ和t为等距取值。图10.1

第一象限内单位圆弧的表示形式y(a)1.0

xy(b)1.0

x0

010.1.1

曲线的表示ComputerGraphics参数表示的优越性

①参数方程的形式不依赖于坐标系的选取,具有形状不变性;

②在参数表示中,变化率以切矢量来表示,不会出现无穷大的情况;

③对参数表示的曲线、曲面进行平移、放缩和旋转等几何变换比较容易;

④用参数表示的曲线曲面的交互能力强,参数表示式中系数的几何意义明确,并提高了自由度,便于控制形状。ComputerGraphics10.1.2

参数曲线的切矢量、弧长、法矢量和曲率·

在三维空间中,曲线的参数方程为1.位置矢量曲线上任一点的位置矢量可表示为2.切矢量图10.2参数曲线的切矢△PP(t)P′

(t)P(t+△t)yxz设

是曲线上的两点,记

,如图10.2所示。当时,导数矢量

的方向趋近于P点处的切线方向,记为

。称

为在处的导矢,或切矢量。设

表示

的弧长,由于弦长即和弧长

的极限相同,(10.4)则(10.5)T称为处切线方向的单位矢量。上式说明,如果以弧长为参数,曲线在任意点的切矢量为单位矢量。ComputerGraphics3.弧长对于正则曲线(),从点

到点

的弧长定义为其中

是切矢量

的长度。式的折线长度的极限。记

,增可看作是曲线从

到为

,在曲线从

之间沿着递的方向,取n-1个点

,把相邻点用直线段连接起来,得到曲线的折线,它的长度为

,当

时,

。10.1.2

参数曲线的切矢量、弧长、法矢量和曲率ComputerGraphics4.曲率设以弧长s为参数,曲线上的点

和点

处的单位切矢量分别为

,记两切矢的夹角为

,如图10.3所示。对于空间曲线,这两个切矢量通常不在同一平面上。记为曲线从点

到点

的长度(弧长),通常用

之比的绝对值

来度量曲线由

到的弯曲程度。当

时,曲线在点

处的曲率

定义为当

时,

称为曲线在

点的曲率半径。T(s+△s)P(s+△s)P(s)T(s)△ΦT(s+△s)图10.3参数曲线的曲率△s△h△TT(s)10.1.2

参数曲线的切矢量、弧长、法矢量和曲率ComputerGraphics由于

都是单位长度,所以圆心角与其对应的圆弧长

(图10.3)大小相等。弧长

的极限相同,因此

,所以由式(10.5)知(10.6)同方向,其中K5.主法矢量和副法矢量对于一条空间三维曲线,任何垂直于切矢量T的矢量,都称为法矢量。因为T是单位矢量,由式

两边对t求导知,矢量

垂直于T。与的单位矢量N称为主法矢量。如果取弧长s为参数,则有为曲率。约定

,有KN称为曲线的曲率矢量。10.1.2

参数曲线的切矢量、弧长、法矢量和曲率ComputerGraphics矢量

垂直于T

和N,把B

称为单位副法线矢量。过曲线上任一点有三个两两垂直的单位矢量T、N、B,它们满足、

。把通过给定点且分别包含切矢量T和主法矢量N,主法矢量N和副法矢量B,副法矢量B和切矢量T的平面分别称之为密切平面、法平面和从切平面,如图10.4所示。法平面从切平面BTN图10.4参数曲线的法矢密切平面QRM10.1.2

参数曲线的切矢量、弧长、法矢量和曲率ComputerGraphics密切平面与密切圆、、,R点的密切圆是指当设曲线上三点M、R、Q分别对应参数时,经过三点M、R、Q的圆。由于所以和副法矢量B同向,即过M、R、Q的圆和密切平面重合。由此我们得到如下结论:过点R的切平面有很多,它们都过该点的切线,而同时过该点的前后两个点的切平面只有一个,即密切平面。因此密切平面的几何意义是:在所有和曲线上的点R相切的平面中,密切平面是R附近和曲线贴的最紧的平面。密切圆是由M、R和Q三点决定的,点R邻域内的曲线可用由M经R到Q之间的圆弧近似,所以密切圆可表示曲线在点R处的弯曲程度。曲线上一点R的密切圆的半径等于该点的曲率半径,密切圆心是曲率中心。ComputerGraphics讨论以t为参数时,曲率的表达式因为(10.7)上式两边对t求导,就有由得(10.8)ComputerGraphics10.1.3

参数曲面的切平面和法矢量1参数曲面的表式和曲线一样,曲面也有显式、隐式和参数式三种表示方式。在uv平面矩形域上的参数曲面片可表示成如下形式(10.9)其中,和分别为和的显式函数,即常用来描述四边形参数曲面片几何性质的几何元素有:角点。四个角点是:

,简记为边界线。矩形域曲面片的四条边界线是:。。3)点处的切矢。面片在点处具有u向切矢和v向切矢其中,表示

处沿方向的一阶导矢。4)点处的法矢。面片在点处的法矢可表示为。ComputerGraphics10.1.3

参数曲面的切平面和法矢量和

线性表出,所以曲面在

点的切平向的切矢量都可由面方程可表示成(10.11)曲面在点

处的法矢量唯一定义为。2参数曲面的切平面和法矢量设

为曲面

上的任一点,

是uv平面上满足的任一条参数曲线,记过曲面上的点

的曲线为L,则L在

点的切矢量为(10.10)曲面上过

点的任何一条曲线在

点的切矢量都是曲面在该点的切矢量,即,曲面在

点的切矢量有无穷多个,所有这些切矢量组合成的平面称为曲面在

点的切平面。由式(10.10)知,曲面在

点处沿任意方ComputerGraphics三次参数多项式曲线

的代数表示形式是:上式的矢量形式是(10.12)其中

是多项式系数矢量。多项式系数矢量并没有反映出曲线的几何性质,,对于三次多项式曲线,常用四个具有明显几何意义的条件进行描述。在三次曲线的Hermite表示中,这四个条件是:两端点的位置:两端点的切矢量:和和10.1.4参数曲线的多项式表示ComputerGraphics的值代入式(10.12),把则有(10.13)其中(10.14)为[0,1]区间上的三次Hermite基函数,也可称为调和函数。式(10.13)是参数曲线的三次Hermite表示形式,

,

,

为其几何系数几何系数和形状的关系如图10.5所示。式(10.12)和(10.13)写成矩阵形式分别是(10.15)(10.16)其中和分别表示矩阵A和B的转置利用式(10.15)和式(10.16)及矩阵运算就可得到代数形式和几何形式的转换关系。图10.5三次Hermite曲线10.1.4参数曲线的多项式表示ComputerGraphics10.1.5

参数连续性和几何连续性参数连续性和几何连续性是刻画曲线曲面性质的两个重要量如果曲线

处满足左右n阶导数均存在且相等,即,

(10.17)则称曲线

处是n阶参数连续的,或称Cn连续。若曲线在区间[0,1]内处处是Cn连续的,则称该曲线是Cn连续的。例如,如果曲线在

处满足C2连续,则它满足下述条件ComputerGraphics几何连续性,则称曲线在·

1)

如果曲线

在点

处满足位置连续,即处零阶几何连续(GC0)。·

2)如果曲线在点处满足GC0连续,且切矢量方向相同,即存在常数,使,则称曲线在

处一阶几何连续(GC1)。·

3)如果曲线在点处满足GC1连续,且副法矢量连续,曲率连续,即,,则称曲线在

处二阶几何连续(GC2)。(a)零阶几何连续性(b)一阶几何连续性(c)二阶几何连续性图10.6零到二阶几何连续ComputerGraphics几何连续性与选择的参数无关,只与曲线本身有关。几何连续性和参数连续性的关系如下:1)如果曲线在

处是GC2的,则经过适当参数化,该曲线也是C2的。2)曲线在

处是GC2连续的充要条件是存在常数

,使得(10.18)取,,式(10.18)就成为连续的条件了。几何连续性的条件要比参数连续性的条件更苛刻,因为有些C2连续的曲线,无论如何对其进行参数化,都不能成为GC2连续的。例如,摆线y的形状如图10.7所示,摆线在处是C2连续的,但不是GC2连续的.02π4πx2π图10.7

摆线几何连续性ComputerGraphics10.2

Bézier曲线Bézier曲线是一段n次多项式曲线,是构造自由曲线曲面的重要和基本方法之一。它具有许多优点,诸如保凸性,凸包性,曲线形状不依赖于坐标系的选择,人机交互手段灵活等。由于它能满足几何造型对曲线曲面的要求,因此在理论和应用上均得到了极大的重视和发展。ComputerGraphics10.2 Bézier曲线·线性贝塞尔曲线给定点P0、P1,线性贝塞尔曲线只是一条两点之间的直线。这条线由下式给出:·且其等同于线性插值·二次方贝塞尔曲线二次方贝塞尔曲线的路径由给定点P0、P1、P2的函数B(t)追踪:ComputerGraphics10.2 Bézier曲线·三次方贝塞尔曲线[编辑]·P0、P1、P2、P3四个点在平面或在三维空间中定义了三次方贝塞尔曲线。曲线起始于P0走向P1,并从

P2的方向来到P3。一般不会经过P1或P2;这两个点只是在那里提供方向资讯。P0和P1之间的间距,决定了曲线在转而趋进P3之前,走向P2方向的“长度有多长”。·曲线的参数形式为:ComputerGraphics10.2.1

Bézier曲线的定义1

Bézier曲线的定义在空间给定n个点,称下列参数多项式曲线为n次Bézier曲线,

0≤t≤1(10.19)其中是Bernstein基函数:(10.20)折线称为

的控制多边形,各点称为

的控制顶点。控制多边形

是对Bézier曲线

的大致勾画,

是对控制多边形的逼近。如图10.8是n次Bézier曲线和它的控制多边形。P0P1Pn-1图10.8

n次Bézier曲线及控制多边形PnP(t)ComputerGraphicsBernstein基函数(如图10.9)具有如下性质:(1)非负性(2)权性(3)对称性,0

1

t图10.9四个3次Bernstein基函数J0,3J1,3J2,3J3,31·(4)导函数,记,,则,的导函数为(10.21),

在参数(5)最大值,对(6)递推公式,其中时,达到最大值。,(10.22)(7)升阶,(10.23)10.2.1 Bézier曲线的定义2

Bernstein基函数的性质ComputerGraphics10.2.2 Bezier曲线的性质(10.24)端点位置:Bézier曲线的起点为P0,终点为Pn,即,端点的切线Bézier曲线

在起点

处与边

相切,在终点切,即点处与边相(10.25)(3)端点的曲率由式(10.8)知,Bézier曲线

在点

处的曲率

分别为(10.26)这可由曲率公式,式(10.25)得到下式由Bezier曲线的性质(1)-(3)知,Bezier曲线在端点处的邻的

个点决定的,与其他的点无关。(

=0,1,2)阶导矢是由相ComputerGraphics(4)仿射不变性Bézier曲线具有仿射不变性,也就是说Bézier曲线的形状和位置仅与它的控制顶点的位置有关,而与仿射坐标系的选择无关。仿射不变性的含义可解释如下。给定个点,设是由这个点构造的n次Bézier曲线,把

经仿射变换后变成的新的坐标系

中的曲线记为

。另一方面,设

个数据点经仿射变换后变成的新坐标系

中,由它们构成的n次Bézier曲线记为

,仿射不变。的凸包是指包含这些点的的点分别为性的含义是(5)凸包性点集

最小凸集。由于,且0≤Ji,n

(t)≤1,所以对某个t值,点

是各个控制顶点

的凸线性组合,因此点

一定位于其控制顶点的凸包之内,如图10.10所示。P0P10PnPn-1P(t)图10.10

Bézier曲线的凸包性10.2.2 Bezier曲线的性质ComputerGraphics(6)交互能力控制多边形大致勾画出了Bézier曲线

的形状,因此可以通过改变控制多边形的形状来改变

的形状,如图10.11所示,将控制顶点移到

处,

的形状发生了变化。另外,移动

的第j个控制顶点

,将对

上参数为

的点的影响最大,越远离

的点所受的影响越小,这种性质称为拟局部性。(7)变差缩减性如果Bézier曲线

的控制多边形是一个平面图形,则平面内任一直线与的交点的个数不多于该直线与控制多边形的交点的个数,这一性质叫做变差缩减性[1]。此性质反映了Bézier曲线比控制多边形的波动小,即Bézier曲线比控制多边形更光顺。P0P1P2P3P4图10.11

Bézier曲线随控制多边形而变P

310.2.2 Bezier曲线的性质ComputerGraphics(8)保凸性对于Bézier曲线接起来,如果是个封闭的平面凸多边形,则Bézier曲线,把控制多边形

的终点

和起点

连是一段凸的平面曲线,该性质称为Bézier曲线的保凸性[1],如图10.12所示。图10.12P0

PnBézier曲线的保凸性10.2.2 Bezier曲线的性质ComputerGraphics10.2.3

例子本节讨论由分段定义的Bézier曲线逼近单位圆。不失一般性,讨论由四条Bézier曲线逼近单位圆。单位圆由下式定义(10.27)下面给出构造过程。考虑图10.13所示的情形,对四分之一圆逼近的三次Bézier曲线由四个控制点定义,其关键是确定

的值使Bézier曲线较好地逼近该四分之一圆。取Bézier曲线的中点在圆上,则,从而得到对平面上四分之一圆的近似表示为(10.28)三次Bézier曲线(10.28)和其控制顶点如图10.13所示。这样四段三次Bézier曲线就可逼近一个平面整圆。(1,d)(d,1)z(0,1)(1,0)

y图10.13三次Bézier曲线ComputerGraphics10.2.4 Bezier曲线性质的进一步讨论,用作图法可以画出所对应的Bé1.Bézier曲线的几何作图给定了控制多边形顶点

,zier曲线,Bézier给出下面一种几何作图法。在控制多边形中以

和的比例,则分点为端点的第i条边上找一点为,把该边分成,(10.29)这n个点组成一个新的n-1边形,对该n-1边形重复上述操作,得到一个n-2边形的n-1个顶点,依次类推,连续作n次操作后,得到一个单点,该点就是式(10.19)表示的Bézier曲线上参数为t的点。ComputerGraphics图10.14显示了四次Bézier曲线取时的作图过程。该作图过程,可以描述为一个代数递推公式,(10.30)其中,

,l表示递推的步数,i表示该点位于相应多边形的第i+1条边上。P2P4Bézier曲线的几何作图P0P3P1P3,1P2,1P2,21,3P1,2

PP0,1P0,40,3P

P0,2P11图10.14式(10.30)说明,一条n次Bézier曲线可以表示成两条次Bézier曲线的线性组合。10.2.4 Bezier曲线性质的进一步讨论ComputerGraphics2 Bezier曲线的升阶Bézier曲线具有整体性,可以使用升阶的方法,增加它的控制顶点,从而增加对曲线进行形状控制的灵活性。利用Bernstein基的升阶公式(10.23),可以得到Bézier曲线的升阶公式。对一条n次Bézier曲线P0=

P0*P1P2P3=

P4*P1*P2*P3*图10.15

Bézier曲线的升阶增加一个控制顶点后,得到一条新的n+1次Bézier曲线,如果新的Bézier曲线和原Bézier曲线表示同一条曲线,则新的Bézier曲线的控制顶点可由如下升阶公式决定其中(10.32)。新控制多边形在老控制多边形的凸包内,且更接近对应的Bézier曲线,如图10.15所示。n次Bézier曲线升阶后得到的高次Bézier曲线实际上仍然是n次Bézier曲线,当移动新的控制顶点使曲线的形状发生变化时,新的Bézier曲线的次数就升高了。ComputerGraphics3 Bezier曲线的导矢对Bézier曲线的定义公式(10.19)求导,并利用Bernstein基函数的导数递推公式(10.21),可得到Bézier曲线的一阶导矢如下(10.33),称为向前差分矢量,也就是控制多边形的边矢量。其中式(10.33)表明,n次Bézier曲线的导矢是n-1次的Bézier曲线,且的控制顶点来自的控制多边形的n条边矢量,分别将这n条边矢量的起点置于原点,矢量的末端就是的各控制顶点。ComputerGraphics10.2.5 Bezier曲线的拼接用Bézier曲线表示复杂形状的自由曲线常采用分段定义的方法,即把复杂形状的曲线分解为多段较为简单的Bézier曲线,将多段简单Bézier曲线首末拼接起来形成整体曲线。设和为两条n次Bézier曲线,拼接时在连接点处需要满足一定的光滑性要求,这些光滑性要求包括:1)

GC0连续:

其充要条件是

。2)

GC1连续:其充要条件是且

均不为零且同向,即 、

三点共线。Q2Pn-1Pn-2Pn=Q0

Q12

n-1

1d(Q

,P

Q

)n-2

n-1

1d(P

,P

Q

)图10.16

GC0,

GC1,

GC2的连续条件3)

GC2连续:

其充要条件是

和六点共面;

和在连接点处达到GC1连续,还要满足或同在直线

上或位于直线的同侧,而且(10.34)的距离,如图10.16所,分别表示其中示。点和

点到直线ComputerGraphics与

重合。步骤1:

平移控制多边形

使步骤2:

围绕

点转动控制多边形,使得与同向。·

步骤3:

围绕线段

转动多边形定的平面内,并且与

位于直线,使得

落在的同一侧。所确·

步骤4:

调整

使式(10.34)成立。由于使用控制多边形生成曲线,所以曲线拼接的过程很直观,也很容易实现。另外,因为

在拼合点处的曲率不一定相同,所以,当两条曲线的曲率不相同时,GC2拼接至少需要改动一条曲线的形状。调整曲线

,使它们在连接处达到GC2连续的算法如下:ComputerGraphics10.2.6 Bezier曲线的离散生成在计算机图形学中经常需要将一段Bézier曲线进行分割,例如对两条Bézier曲线做求交运算,或显示一条Bézier曲线。利用Bézier曲线的离散性可以求得分割后两段曲线的控制顶点,从而将两段曲线表示为Bézier曲线的形式。Bézier曲线

经中点分割得到的两段曲线可表示为(10.35)其中

和由下列递推关系确定(10.36)式中。ComputerGraphics实际中用的较多的是三次Bézier曲线,时的递推关系式如图10.17所示。图10.17的几何意义如图10.18所示:P0P1P2P3P1[1]P2[1]P3[1]P2[2]P3[2]P3[3]图10.17的Pi[r]的递推关系P2[1]图10.18

Bézier曲线的割角过程P2P1P0P32P1[1]P3[1]P2[2]P3[2]P3[3]10.2.6 Bezier曲线的离散生成ComputerGraphics10.3

Bezier曲面称下10.3.1

Bézier曲面的定义和性质在空间中给定(n+1)×(m+1)个点

,面张量积形式的参数多项式曲面为n×m次的Bézier曲面:,0≤u

,v

≤1(10.37)其中,分别是n次和m次Bernstein基函数,P04P40P30P20P10P00P01P14P03P02P11P21P31P41P(u,0)P(0,v)图10.19

Bézier曲面的控制网格为的控制顶点,把由和

组成的网格称为控制网格,如图

10.19所示。控制网格是对Bézier曲面的大致形状的勾画.ComputerGraphicsBezier曲面的性质(1)端点位置控制网格的四个角点P00,P0m,Pn0,nmP

是曲面的四个端点,如图10.20所示。,P40P04P03P02P3P20P10P00P01P11P21P31P41P14P(u,0)P(0,v)图10.20

Bézier曲面的端点和边界线,

为控制多边形。边界线的位置的四条边界线

,和

是Bézier曲线,分别以

,端点的切平面端点

的u向切矢和v向切矢分别为

和形所在的平面在P00点和曲面相切。同理,三角形,所以三角,,处与(图10.20中斜线部分)所在的平面分别在点 ,

,曲面相切。ComputerGraphics是在点

处的法向;其余各(4)端点的法向由端点的切平面知,端点

处法向的情况也类似。(5)凸包性曲面

位于其控制顶点的凸包内。仿射不变性曲面

的形状仅与其控制顶点

的位置有关,而与坐标系的选择无关。拟局部性修改一个控制顶点时,曲面上距离它较近的点受影响较大。要改变曲面某部分的形状,只要交互调节相应的控制顶点即可。Bezier曲面的性质ComputerGraphics10.3.2 Bezier曲面的拼接两张Bézier曲面相连接时,在公共边界达到GC1连续是指在公共边界的每一点上两曲面的切平面重合。假定两张要拼接的Bé

zier曲面的方程为Q11Q12Q13Q03P

Q32

02P

Q01P30

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论