《非均匀有理B样条.pptx》由会员分享,可在线阅读,更多相关《非均匀有理B样条.pptx(71页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1972年,Gordon、Riesenfeld等人发展了1946年Schoenberg提出的样条方法,提出了B样条方法,在保留Bezier方法全部优点的同时,克服了Bezier方法的弱点。样条的史话第1页/共71页样条的史话(1)1946年的红皮书 Schoenberg拉开了神话的序幕 从插值的R-K现象说起 样条分段连续多项式第2页/共71页样条的史话(2)断言样条不可能用于外形设计几何样条出现,离散计算,峰回路转 Riesenfield,Gordan,.第3页/共71页如何理解B-样条?样条插值,三对角方程 (函数、参数)给定分划,所有的B样条的全体组成一个线性空间,线性空间有基函数,这就
2、是B样条基函数由B样条基函数代替Bezier曲线中的Bernstein基函数,即B样条曲线。第4页/共71页样条的递推定义和性质B样条曲线的方程定义为:是控制多边形的顶点 (i=0,1,.,n)称为k阶(k-1次)B样条基函数 B样条基函数是一个称为节点矢量的非递减的参数t的序列所决定的k阶分段多项式,也即为k阶(k-1次)多项式样条。第5页/共71页 de Boor-Cox递推定义 并约定 几个问题第6页/共71页几个问题 的非零区间是什么?需要多少个节点?定义区间是什么?第7页/共71页以k4,n=4为例第8页/共71页2性质局部支承性。权性。微分公式。第9页/共71页B样条曲线类型的划分
3、曲线按其首末端点是否重合,区分为闭曲线和开曲线。B样条曲线按其节点矢量中节点的分布情况,可划分为四种类型。第10页/共71页均匀B样条曲线。节点矢量中节点为沿参数 轴均匀或等距分布,所有 节点区间长度为常数。这样的节点矢量定义了均匀的B样条基。第11页/共71页准均匀B样条 与均匀B样条曲线的差别在于两端节点具有重复度k,这样的节点矢量定义了准均匀的B样条基。均匀B样条曲线没有保留Bezier曲线端点的几何性质,即样条曲线的首末端点不再是控制多边形的首末端点。采用准均匀的B样条曲线解决了这个问题第12页/共71页分段Bezier曲线 节点矢量中两端节点具有重复度k,所有内节点重复度为k-1,这
4、样的节点矢量定义了分段的Bernstein基。第13页/共71页 B样条曲线用分段Bezier曲线表示后,各曲线段就具有了相对的独立性,移动曲线段内的一个控制顶点只影响该曲线段的形状,对其它曲线段的形状没有影响。并且Bezier曲线一整套简单有效的算法都可以原封不动地采用。缺点是增加了定义曲线的数据,控制顶点数及节点数。第14页/共71页非均匀B样条曲线 任意分布的节点矢量 ,只要在数学上成立(节点序列非递减,两端节点重复度k,内节点重复度k-1)都可选取。这样的节点矢量定义了非均匀B样条基。第15页/共71页3.3.2 B样条曲线的性质局部性。k 阶B样条曲线上参数为的一点至多与k个控制顶点
5、有关,与其它控制顶点无关;移动该曲线的第i个控制顶点Pi至多影响到定义在区间 上那部分曲线的形状,对曲线的其余部分不发生影响。第16页/共71页 连续性 P(t)在r重节点处的连续阶不低于 k-1-r。凸包性 P(t)在区间 上的部分位于k个点 的凸包 内,整条曲线则位于各凸包 的并集之内。第17页/共71页分段参数多项式P(t)在每一区间上都是次数不高于k-1的参数t的多项式 导数公式 第18页/共71页变差缩减性 设平面内 n+1 个控制顶点 构成B样条曲线 P(t)的特征多边形。在该平面内的任意一条直线与 P(t)的交点个数不多于该直线和特征多边形的交点个数。几何不变性B样条曲线的形状和
6、位置与坐标系的选择无关。第19页/共71页仿射不变性即在仿射变换下,的表达式具有形式不变性。直线保持性控制多边形退化为一条直线时,曲线也退化为一条直线。第20页/共71页 造型的灵活性。用B样条曲线可以构造直线段、尖点、切线等特殊情况.对于四阶(三次)B样条曲线.若要在其中得到一条直线段,只要四点 位于一条直线上第21页/共71页为了使P(t)能过P(i)点,只要使 重合尖点也可通过三重节点的方法得到为了使曲线和某一直线L相切,只要取 位于L上及 的重数不大于2。第22页/共71页 第23页/共71页算法欲计算B样条曲线上对应一点P(t),可以利用B样条曲线方程,但是采用de Boor 算法,
7、计算更加快捷。de Boor 算法的导出第24页/共71页现令则这就是著名的de Boor 算法第25页/共71页de Boor 算法的递推关系如图第26页/共71页De Boor 算法的几何意义de Boor算法有着直观的几何意义 割角,即以线段 割去角 。从多边形 开始,经过 k-1 层割角,最后得到P(t)上的点第27页/共71页 第28页/共71页节点插入算法通过插入节点可以进一步改善B样条曲线的局部性质,提高B样条曲线的形状控制的灵活性,可以实现对曲线的分割等。插入一个节点 在定义域某个节点区间 内插入一个节点t,得到新的节点矢量:重新编号成为第29页/共71页这个新的节点矢量U1决
8、定了一组新的B样条基原始的B样条曲线就可以用这组新的B样条基与未知新顶点 表示第30页/共71页Boehm给出了这些未知新顶点的计算公式 r 表示所插结点t在原始节点矢量T中的重复度。第31页/共71页 第32页/共71页 第33页/共71页样条曲面给定参数轴u和v的节点矢量 pq阶B样条曲面定义如下 第34页/共71页 构成一张控制网格,称为B样条曲面的特征网格。和 是B样条基,分别由节点矢量U和V按deBoor-Cox递推公式决定。第35页/共71页 第36页/共71页3.4 NURBS曲线与曲面B样条曲线包括其特例的Bezier曲线都不能精确表示出抛物线外的二次曲线,B样条曲面包括其特例
9、的Bezier曲面都不能精确表示出抛物面外的二次曲面,而只能给出近似表示。提出NURBS方法,即非均匀有理B样条方法主要是为了找到与描述自由型曲线曲面的B样条方法既相统一、又能精确表示二次曲线弧与二次曲面的数学方法。第37页/共71页NURBS太过复杂,常令人望洋兴叹NURBS Book,走向实用化 (见下页)第38页/共71页 Some years ago a few researchers joked about NURBS,saying that the acronym really stands for NOBODY Understands Rational B-Splines,wri
10、te the authors in their foreword;they formulate the aim of changing NURBS to EURBS,that is,Everybody.There is no doubt that they have achieved this goal.I highly recommend the book to anyone who is interested in a detailed description of NURBS.It is extremely helpful for students,teachers and design
11、ers of geometric modeling systems.Helmut Pottmann第39页/共71页NURBS方法的主要优点既为标准解析形状(即前面提到的初等曲线曲面),又为自由型曲线曲面的精确表示与设计提供了一个公共的数学形式第40页/共71页B样条曲线包括其特例的Bezier曲线都不能精确表示出抛物线外的二次曲线,B样条曲面包括其特例的Bezier曲面都不能精确表示出抛物面外的二次曲面,而只能给出近似表示。提出NURBS方法,即非均匀有理B样条方法主要是为了找到与描述自由型曲线曲面的B样条方法既相统一、又能精确表示二次曲线弧与二次曲面的数学方法。第41页/共71页两类研究问
12、题逼近问题:圆弧的Bezier曲线逼近,挪威Oslo学派的工作精确表示问题:权因子、顶点满足什么条件才能精确表示圆弧?第42页/共71页NURBS方法的主要优点既为标准解析形状(即前面提到的初等曲线曲面),又为自由型曲线曲面的精确表示与设计提供了一个公共的数学形式修改控制顶点和权因子,为各种形状设计提供了充分的灵活性。具有明显的几何解释和强有力的几何配套技术对几何变换和投影变换具有不变性。非有理B样条、有理与非有理Bezier方法是其特例。第43页/共71页应用NURBS中还有一些难以解决的问题:比传统的曲线曲面定义方法需要更多的存储空间权因子选择不当会引起畸变对搭接、重叠形状的处理很麻烦。反
13、求曲线曲面上点的参数值的算法,存在数值不稳定问题 (MAF方法)第44页/共71页在讲NURBS 的定义前,先回顾一下B样条的定义:第45页/共71页3.4.4.1NURBS曲线的定义NURBS曲线是由分段有理B样条多项式基函数定义的第46页/共71页Ri,k(t)具有k阶B样条基函数类似的性质:局部支承性:Ri,k(t)=0,tti,ti+k权性:可微性:如果分母不为零,在节点区间内是无限次连续可微的,在节点处(k-1-r)次连续可导,r是该节点的重复度。若i=0,则Ri,k(t)=0;若i=+,则Ri,k(t)=1;第47页/共71页NURBS曲线与B样条曲线具有类似的几何性质:局部性质。
14、变差减小性质。凸包性。在仿射与透射变换下的不变性。在曲线定义域内有与有理基函数同样的可微性。第48页/共71页如果某个权因子为零,那么相应控制顶点对曲线没有影响。若 ,则当 时,非有理与有理Bezier曲线和非有理B样条曲线是NURBS曲线的特殊情况第49页/共71页 齐次坐标表示齐次坐标系xyw中的控制顶点为k阶非有理B样条曲线可表示为:第50页/共71页以坐标原点为投影中心,则得到平面曲线第51页/共71页三维空间的NURBS曲线可以类似地定义。非有理B样条的算法可以推广到NURBS曲线,只不过是在齐次坐标下进行。第52页/共71页3.4.3.3 权因子的几何意义如果固定曲线的参数t,而使
15、 变化,则NURBS曲线方程变成以 为参数的直线方 程,即NURBS曲线上t值相同的点都位于同一直线上。第53页/共71页 分别是 对应曲线上的点,即N,Bi可表示为:(Pi,Bi,N,B)四点的交比第54页/共71页(1)若i增大或减小,则也增大或减小,所以曲线被拉向或推离开Pi点;(2)若j增大或减小,曲线被推离或拉向Pj(ji)。第55页/共71页圆锥曲曲线的的NURBS表示表示取节点向量为 则NURBS曲线退化为二次Bezier曲线,且可以证明,这是圆锥曲线弧方程。称为形状因子,的值确定了圆锥曲线的类型。时,上式是抛物线弧,第56页/共71页 时,上式是双曲线弧,时,上式是椭圆弧。时,
16、上式退化为一对直线段P0P1和 P1P2,时,上式退化为连接两点P0P2的直线段第57页/共71页曲线的修改常用的方法有修改权因子、控制点和反插节点。修改权因子当保持控制顶点和其它权因子不变,减少或增加某权因子时,曲线被推离或拉向相应顶点。第58页/共71页欲将曲线在该点S拉向或推离控制顶点Pi一个距离d,以得到新点S,可由重新确定相应的权因子 使之改变为 来达到修改控制顶点修改控制顶点的位置,曲线随之变形。第59页/共71页基于几何约束的形状修改问题的提法:求新的控制顶点,使曲线上的 点S变到T。T S P(t)第60页/共71页将曲线改写为其中第61页/共71页约束优化方法 假设控制顶点
17、改变,以满足点约束。我们对以上每个点,给一个扰动量 ,并用约束优化方法求之。约束条件为 第62页/共71页 令 由 Lagrange 函数 可得方程组 第63页/共71页解方程组可得第64页/共71页 当只有一个控制顶点可动时,即为 此为CAD主编Piegl于1989年提出的公式。该方法可推广到其他几何约束及曲面。第65页/共71页基于能量极小的方法 曲线 strain energy 曲面 Thin plate energy 第66页/共71页非均匀有理B样条(NURBS)曲面NURBS曲面的定义第67页/共71页 规定四角点处用正权因子,即 ,其余 。NURBS曲面的性质 与非有理B样条基函数相类似的性质:局部支承性质权性第68页/共71页可微性.在重复度为r的u节点处沿u向是p-r-1次连续可微,在重复度为r的v节点处沿v向是q-r-1次连续可微极值.若p,q1,恒有一个极大值存在是双变量B样条基函数的推广第69页/共71页 谢谢!第70页/共71页清华大学 计算机图形学感谢您的观看!第71页/共71页
限制150内