




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
清华大学计算机科学与技术系计算机图形学基础,3.1.2Bezier曲线与曲面清华大学,由于几何外形设计的要求越来越高,传统的曲线曲面表示方法,已不能满足用户的需求。1962年,法国雷诺汽车公司的P.E.Bezier构造了一种以逼近为基础的参数曲线和曲面的设计方法,并用这种方法完成了一种称为UNISURF的曲线和曲面设计系统,1972年,该系统被投入了应用。Bezier方法将函数逼近同几何表示结合起来,使得设计师在计算机上就象使用作图工具一样得心应手。,清华大学计算机科学与技术系计算机图形学基础,3.1.2.1Bezier曲线的定义和性质,1定义给定空间n+1个点的位置矢量Pi(i=0,1,2,n),则Bezier参数曲线上各点坐标的插值公式是:其中,Pi构成该Bezier曲线的特征多边形,Bi,n(t)是n次Bernstein基函数:0=1,0!=1曲线实例如右图所示。,清华大学计算机科学与技术系计算机图形学基础,2Betnstein基函数的性质(1)正性(2)端点性质(3)权性由二项式定理可知:,清华大学计算机科学与技术系计算机图形学基础,(4)对称性因为(5)递推性。即高一次的Bernstein基函数可由两个低一次的Bernstein调和函数线性组合而成。因为,,清华大学计算机科学与技术系计算机图形学基础,(6)导函数(7)最大值。在处达到最大值。(8)升阶公式(9)积分,清华大学计算机科学与技术系计算机图形学基础,3Bezier曲线的性质(1)端点性质a.)曲线端点位置矢量由Bernstein基函数的端点性质可以推得,当t=0时,P(0)=P0;当t=1时,P(1)=Pn。由此可见,Bezier曲线的起点、终点与相应的特征多边形的起点、终点重合。b.)切矢量因为,所以当t=0时,P(0)=n(P1-P0),当t=1时,P(1)=n(Pn-Pn-1),这说明Bezier曲线的起点和终点处的切线方向和特征多边形的第一条边及最后一条边的走向一致。,清华大学计算机科学与技术系计算机图形学基础,c.)二阶导矢当t=0时,当t=1时,上式表明:2阶导矢只与相邻的3个顶点有关,事实上,r阶导矢只与(r+1)个相邻点有关,与更远点无关。将、及、代入曲率公式,可以得到Bezier曲线在端点的曲率分别为:,清华大学计算机科学与技术系计算机图形学基础,d.)k阶导函数的差分表示n次Bezier曲线的k阶导数可用差分公式为:其中高阶向前差分矢量由低阶向前差分矢量递推地定义:例如:,清华大学计算机科学与技术系计算机图形学基础,(2)对称性。由控制顶点构造出的新Bezier曲线,与原Bezier曲线形状相同,走向相反。因为:这个性质说明Bezier曲线在起点处有什么几何性质,在终点处也有相同的性质。,清华大学计算机科学与技术系计算机图形学基础,(3)凸包性由于,且,这一结果说明当t在0,1区间变化时,对某一个t值,P(t)是特征多边形各顶点的加权平均,权因子依次是。在几何图形上,意味着Bezier曲线P(t)在中各点是控制点Pi的凸线性组合,即曲线落在Pi构成的凸包之中,如图3.1.9所示。,清华大学计算机科学与技术系计算机图形学基础,(4)几何不变性。这是指某些几何特性不随坐标变换而变化的特性。Bezier曲线位置与形状与其特征多边形顶点的位置有关,它不依赖坐标系的选择,即有:(变量u是t的置换)(5)变差缩减性。若Bezier曲线的特征多边形是一个平面图形,则平面内任意直线与C(t)的交点个数不多于该直线与其特征多边形的交点个数,这一性质叫变差缩减性质。此性质反映了Bezier曲线比其特征多边形的波动还小,也就是说Bezier曲线比特征多边形的折线更光顺。,清华大学计算机科学与技术系计算机图形学基础,(6)仿射不变性对于任意的仿射变换A:即在仿射变换下,的形式不变。,清华大学计算机科学与技术系计算机图形学基础,3.1.2.2Bezier曲线的递推(deCasteljau)算法,计算Bezier曲线上的点,可用Bezier曲线方程,但使用deCasteljau提出的递推算法则要简单的多。如图3.1.10所示,设、是一条抛物线上顺序三个不同的点。过和点的两切线交于点,在点的切线交和于和,则如下比例成立:这是所谓抛物线的三切线定理。,清华大学计算机科学与技术系计算机图形学基础,当P0,P2固定,引入参数t,令上述比值为t:(1-t),即有:t从0变到1,第一、二式就分别表示控制二边形的第一、二条边,它们是两条一次Bezier曲线。将一、二式代入第三式得:当t从0变到1时,它表示了由三顶点P0、P1、P2三点定义的一条二次Bezier曲线。并且表明:这二次Bezier曲线P20可以定义为分别由前两个顶点(P0,P1)和后两个顶点(P1,P2)决定的一次Bezier曲线的线性组合。依次类推,由四个控制点定,清华大学计算机科学与技术系计算机图形学基础,义的三次Bezier曲线P30可被定义为分别由(P0,P1,P2)和(P1,P2,P3)确定的二条二次Bezier曲线的线性组合,由(n+1)个控制点Pi(i=0,1,.,n)定义的n次Bezier曲线Pn0可被定义为分别由前、后n个控制点定义的两条(n-1)次Bezier曲线P0n-1与P1n-1的线性组合:由此得到Bezier曲线的递推计算公式:这便是著名的deCasteljau算法。用这一递推公式,在给定参数下,求Bezier曲线上一点P(t)非常有效。上式中:是定义Bezier,清华大学计算机科学与技术系计算机图形学基础,曲线的控制点,即为曲线上具有参数t的点。deCasteljau算法稳定可靠,直观简便,可以编出十分简捷的程序,是计算Bezier曲线的基本算法和标准算法。当n=3时,decasteljau算法递推出的Pki呈直角三角形,对应结果如图3.1.11所示。从左向右递推,最右边点P30即为曲线上的点。,清华大学计算机科学与技术系计算机图形学基础,这一算法可用简单的几何作图来实现。给定参数,就把定义域分成长度为的两段。依次对原始控制多边形每一边执行同样的定比分割,所得分点就是由第一级递推生成的中间顶点,对这些中间顶点构成的控制多边形再执行同样的定比分割,得第二级中间顶点。重复进行下去,直到n级递推得到一个中间顶点即为所求曲线上的点,如图3.1.12所示。,清华大学计算机科学与技术系计算机图形学基础,3.1.2.3Bezier曲线的拼接,几何设计中,一条Bezier曲线往往难以描述复杂的曲线形状。这是由于增加由于特征多边形的顶点数,会引起Bezier曲线次数的提高,而高次多项式又会带来计算上的困难,实际使用中,一般不超过10次。所以有时采用分段设计,然后将各段曲线相互连接起来,并在接合处保持一定的连续条件。下面讨论两段Bezier曲线达到不同阶几何连续的条件。,清华大学计算机科学与技术系计算机图形学基础,给定两条Bezier曲线P(t)和Q(t),相应控制点为Pi(i=0,1,.,n)和Qj(j=0,1,.,m),且令,如图3.1.13所示,我们现在把两条曲线连接起来。图3.1.13Bezier曲线的拼接,清华大学计算机科学与技术系计算机图形学基础,(1)要使它们达到G0连续的充要条件是:Pn=Q0;(2)要使它们达到G1连续的充要条件是:Pn-1,Pn=Q,Q1三点共线,即:(3)要使它们达到G2连续的充要条件是:在G1连续的条件下,并满足方程。我们将、和,、代入,并整理,可以得到:选择和的值,可以利用该式确定曲线段的特征多边形顶点,而顶点、已被连续条件所确定。要达到连续的话,只剩下顶点可以自由选取。,清华大学计算机科学与技术系计算机图形学基础,如果从上式的两边都减去,则等式右边可以表示为和的线性组合:这表明、和五点共面,事实上,在接合点两条曲线段的曲率相等,主法线方向一致,我们还可以断定:位于直线的同一侧。,清华大学计算机科学与技术系计算机图形学基础,3.1.2.4Bezier曲线的升阶与降阶,1Bezier曲线的升阶所谓升阶是指保持Bezier曲线的形状与定向不变,增加定义它的控制顶点数,也即是提高该Bezier曲线的次数。增加了控制顶点数,不仅能增加了对曲线进行形状控制的灵活性,还在构造曲面方面有着重要的应用。对于一些由曲线生成曲面的算法,要求那些曲线必须是同次的。应用升阶的方法,我们可以把低于最高次数的的曲线提升到最高次数,而获得同一的次数。曲线升阶后,原控制顶点会发生变化。下面,我们来计算曲线提升一阶后的新的控制顶点。设给定原始控制顶点,定义了一条n次Bezier曲线:,清华大学计算机科学与技术系计算机图形学基础,增加一个顶点后,仍定义同一条曲线的新控制顶点为,则有:对上式左边乘以,得到:比较等式两边项的系数,得到:化简即得:其中。,清华大学计算机科学与技术系计算机图形学基础,此式说明:新的控制顶点是以参数值按分段线性插值从原始特征多边形得出的。升阶后的新的特征多边形在原始特征多边形的凸包内特征多边形更靠近曲线。三次Bezier曲线的升阶实例如图3.1.14所示。,清华大学计算机科学与技术系计算机图形学基础,2Bezier曲线的降阶降阶是升阶的逆过程。给定一条由原始控制顶点定义的n次Bezier曲线,要求找到一条由新控制顶点定义的n-1次Bezier曲线来逼近原始曲线。假定是由升阶得到,则由升阶公式有:从这个方程可以导出两个递推公式:和,清华大学计算机科学与技术系计算机图形学基础,3.1.2.5Bezier曲面,基于Bezier曲线的讨论,我们可以方便地可以给出Bezier曲面的定义和性质,Bezier曲线的一些算法也可以很容易扩展到Bezier曲面的情况。1定义设为个空间点列,则次张量积形式的Bezier曲面定义为:其中,是Bernstein基函数。依次用线段连接点列中相邻两点所形成的空间网格,称之为特征网格。,清华大学计算机科学与技术系计算机图形学基础,Bezier曲面的矩阵表示式是:在一般实际应用中,不大于4。,清华大学计算机科学与技术系计算机图形学基础,2性质除变差减小性质外,Bezier曲线的其它性质可推广到Bezier曲面:(1)Bezier曲面特征网格的四个角点正好是Bezier曲面的四个角点,即,。(2)Bezier曲面特征网格最外一圈顶点定义Bezier曲面的四条边界;Bezier曲面边界的跨界切矢只与定义该边界的顶点及相邻一排顶点有关,且、和(图3.1.15打上斜线的三角形);其跨界二阶导矢只与定义该边界的及相邻两排顶点有关;。,清华大学计算机科学与技术系计算机图形学基础,(3)几何不变性。(4)对称性。(5)凸包性。,清华大学计算机科学与技术系计算机图形学基础,3Bezier曲面片的拼接如图3.1.16所示,设两张mn次Bezier曲面片分别由控制顶点和定义。,清华大学计算机科学与技术系计算机图形学基础,如果要求两曲面片达到连续,则它们有公共的边界,即:(3.1.10)于是有。如果又要求沿该公共边界达到连续,则两曲面片在该边界上有公共的切平面,因此曲面的法向应当是跨界连续的,即:(3.1.11),清华大学计算机科学与技术系计算机图形学基础,下面来研究满足这个方程的两种方法。(1)鉴于(3.1.10)式,(3.1.11)式最简单的取解是:(3.1.12)这相当于要求合成曲面上v为常数的所有曲线,在跨界时有切向的连续性。为了保证等式两边关于v的多项式次数相同,必须取(一个正常数)。于是有:即。(2)(3.1.12)式使得两张曲面片在边界达到连续时,只涉及曲面和的两列控制顶点,比较容易控制。用这种方法匹配合成的曲面的边界,u向和v向是光滑连续的。实际上,该式的限制是苛刻的。,清华大学计算机科学与技术系计算机图形学基础,为了构造合成曲面时有更大的灵活性,Bezier在1972年放弃把(3.1.12)式作为连续的条件,而以(3.1.13)来满足(3.1.11)式,这仅仅要求位于和所在的同一个平面内,也就是曲面片边界上相应点处的切平面,这样就有了大得多的余地,但跨界切矢在跨越曲面片的边界时就不再连续了。同样,为了保证等式两边关于v的多项式次数相同,须为任意正常数,是v的任意线性函数。,清华大学计算机科学与技术系计算机图形学基础,4递推(deCasteljau)算法Bezier曲线的递推(deCasteljau)算法,可以推广到Bezier曲面的情形。若给定Bezier曲面特征网格的控制顶点和一对参数值,则:(3.1.14)(3.1.15)或(3.1.16),清华大学计算机科学与技术系计算机图形学基础,(3.1.15)与(3.1.16)中的下标的变化范围已在(3.1.14)式中给出。上面给出了确定曲面上一点的两种方案。当按(3.1.15)式方案执行时,先以u参数值对控制网格u向的n+1个多边形执行曲线deCasteljau算法,m级递推后,得到沿v向由n+1个顶点构成的中间多边形。再以v参数值对它执行曲线的deCasteljau算法,n级递推以后,得到一个,即所求曲面上的点。也可以按(3.1.16)式方案执行,先以v参数值对控制网格沿v向的m+1个多边形执行n级递推,得沿u向由m+1个顶点构成的中间多边形。再以u参数值对它执行n级递推,得所求点。,清华大学计算机科学与技术系计算机图形学基础,3.1.2.6三边Bezier曲面片,与上一节定义在矩形域上的Bezier曲面片不同,本节介绍的三边Bezier曲面片是定义在三边形域上的,如图3.1.17所示,为了便于区分,我们把上一节介绍的Bezier曲面片称为四边Bezier曲面片。三边曲面片能够较好地适应不规则与散乱数据的几何造型及适合有限元分析中的三边元素的需要。,清华大学计算机科学与技术系计算机图形学基础,1三角域内点的表示三角域内一点可以用面积坐标(或重心坐标)来表示,如图3.1.18所示。G是三角形ABC内的任意一点,其面积坐标为。令三角形ABC面积为s,三角形GBC面积为,三角形GCA面积为,三角形GAB面积为,则:,这里所指的三角形面积是有向面积,按顶点字母顺序,顺时针旋转为正,逆时针旋转为负。,清华大学计算机科学与技术系计算机图形学基础,若A=,B=,C=,则:三个坐标分量u、v和w只有两个是独立的,因为u+v+w=1。三角形ABC称为域三角形,或称为三角域。2三角域上的Bernstein基单变量的n次的Bernstein基由的二项式展开各项组成。双变量张量积的Bernstein基由两个单变量的Bernstein基各取其一的乘积组成。而定义在三角域上的双变量n次的Bernstein基由的展开式各项组成。,清华大学计算机科学与技术系计算机图形学基础,Bernstein基函数:其中i+j+k=n,且i,j,k0。可见,三角域上n次Bernstein基共包含了个基函数,可以用一个三角阵来排列这些基函数。例如,n=2时如图3.1.19所示。其位于同一条线上的那些基函数实际是单变量的。,清华大学计算机科学与技术系计算机图形学基础,三角域按Bernstein基的三角阵列相应划分成子三角域,其中诸直线交点同样地称为节点。节点与基函数一一对应。每个结点也由三个指标确定,如图3.1.20所示,它们分别与三参数u,v,w相联系。三角域上Bernstein基同样具有规范性、非负性与递推性。其递推关系为:,清华大学计算机科学与技术系计算机图形学基础,3三边Bezier曲面片的方程使一个基函数联系一个控制顶点,一张n次三边Bezier曲面片必须由构成三角阵列的个控制顶点定义。因此,我们可以写出曲面片的方程:按下标顺序用直线连接控制顶点,就形成了曲面的控制网格,它由三角形组成,网格顶点与三角域的节点一一对应。图3.1.21给出了三次三边Bezier曲面片的一个例子。,清华大学计算机科学与技术系计算机图形学基础,当固定三参数之一时,将得到曲面片上一条等参数线。例如,当w固定,让u独立地变化,则得到一条u线;若让v独立地变化,则得到v线,两者实际是同一条曲线。因此,曲面片上有三族等参数线。当三参数之一为零时,则得曲面片的一条边界线,它由相应那排边界顶点定义,就是一般所指的一条非有理n次Bezier曲线。当三参数之一为1时,则得三边曲面片的一个角点,就是控制网格三角顶点之一。可见,三边Bezier曲面片与四边Bezier曲面片具有类似的性质。,清华大学计算机科学与技术系计算机图形学基础,与定义在矩形域上的四边Bezier曲面片
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (完整版)人教八年级下册期末物理质量测试试题经典
- 护理文件书写规范试题及答案
- 桥梁维修加固施工方案
- 2025年二级建造师市政实务考试真题和答案
- 2025年煤炭生产经营单位开采爆破安全管理人员考试题及答案
- 小学心理活动游戏方案策划
- 动物园冬天策划活动方案
- 咨询行业解决方案模板
- 线路防外破施工方案
- 造价咨询投标方案怎么写
- 生理学全套课件
- 沪科版七年级上册初一数学全册教案(教学设计)
- 防止电力生产事故25项反措地重点要求最终版
- 第2章-信息可视化设计的概念、原则与类型60课件
- 日本蜡烛图技术完整版
- 崇义县凌志矿冶有限责任公司过埠铁木里铁矿(新增资源)采矿权出让收益评估报告
- 大学学生违纪处罚办法
- 癌痛规范化治疗课件资料
- 牛津9AU3-Head-to-head名师制作优质教学课件
- 深信服SDWAN产品介绍
- 雨露计划职业教育补助-学籍证明-模板四川优秀资料
评论
0/150
提交评论