B样条曲线曲面特殊形状的构造原理与方法
来源:小奈知识网
维普资讯 http://www.cqvip.com 第13卷第3期 2007年 9月 湖南环境生物职业技术学院学报 Journal of Hunan Environment—Biological Polytechnic Vo1.13 No.3 Sept. 2007 文章编号:1671—6361(2007)03—0045—04 B样条曲线曲面特殊形状的构造原理与方法 贺志民 (浙江林学院理学院,浙江杭州311300) 摘要:在曲线曲面的设计中,经常遇到特殊形状的设计,如直线中插入尖点和直线段,曲面中插入棱线和直 纹面,这些简单重型值点方法来实现,但若在曲面中夹尖点,平面片和棱角仍存在较大困难,而这些特殊形状 在曲面设计中又经常用到,本文通过巧妙地构造型值点阵,得到了夹平面片,尖点和棱角的3次B样条曲面 的构造原理与方法.图8,参6. 关键词:平面片;尖点;棱角 中图分类号:TP391 文献标识码:A 在曲线曲面的设计中,常常要作一些特定的 形状要求,例如在曲线夹有尖点和直线段,或曲面 夹有棱角和直纹面,这些都可通过重型值点方法 来实现 】,但若在曲面中夹人尖点,平面片和棱 角仍存在困难 J,而这些特殊形状在曲面设计中 又经常用到,本文给出了它们的构造原理与方法, 由于它们与曲线中尖点和直线段,曲面中棱线和 直纹面的构造相互关联,因此文中一并加以介绍. =t…,此时,基函数 -3.4(t),Ni-2.4(t),N ,4 (t)的支承区问将减少2个,Ni_4. (t), , (t)的 支承区问将减少一个,如图1所示. 1 曲线中尖点和直线段的构造原理 与方法 1.1尖点的构造 当型值点列{Q } :。∈ 中置Q =Q = Q…时,由累加弦长公式计算节点矢量有:t =t 图1一个3重节点的B样条基 Fig.1 A B—spHne base function with a 3一multi knot )=1,故有 显然在ti处只有Ni_2. (t)非零,且N (tP(t )=Ni-2,4(t )P =Qi , P (ti-)=P (ti-1- i )等 = (Pi-Pi-1)l(Pi-Pi-1) P (ti+)=P (t…+)ll(P…一Pi) 即Pi=Qi,且P P ,P P…皆与曲线相切. 无重点情况下3次B样条是c2连续的,且节 收稿日期:2007—2一l1 基金项目:浙江省教育厅自然科学基金资助项目(编号:20060676)。 作者简介:贺志民(1966一),男,湖南常宁人,副教授,研究方向:智能计算与计算机图形学 维普资讯 http://www.cqvip.com 湖南环境生物职业技术学院学报 2007年9月 点的重数每增加1,节点处的连续阶就降低1阶,此 时节点的重复度为3,于是在P(t )即Qi处曲线的 连续阶降为0,即只有曲线连续,切线不连续,因而 在Qi间形成直线,如图2所示. Qr.J=Qr= + 图2 夹尖点的插值曲线设计 Fig.2 A curve inserted witll a cusp 1.2直线段的构造 型点点列{Q }m n J;。∈ 。中置Q =Q 时, 有:f =t ,3次 样条基本函数 -4' (t),Ni-3I (t),Ⅳf-2. (f), -1. (f)的支承区间将减少一个, 如图3所示. 图3一个二重节点的B样条基 Fig.3 A B—spline base function witll a 2一multi knot 在t 处只有两个基函数非零,且 (t ) + -2_4(tf)=1. f -3I4( ) 一l+ 一2.4(t )P =Qf jI P 一)=_ 『_(P 一P )II(Pi—P ) L i+1 一2 即P ,Q ,P 共线,且P ,P 在Q 处与曲线 相切,该点处切线连续,而曲率不连续,单个的二 重点给曲线形状带来的影响并不是很直观 , 因此在构造复杂曲线时用得不多,但在复杂曲面 中可用于构造棱线,详见下一节. 在曲线的设计中,二重点主要用于在两个连 续的二重点间构造直线段.即当型值点列{Q } :。 ∈ 中置Q =Q;,=Q…=Qm时,有:t = t;,t…=t1+2相关基函数 _4.4(t),N .4(t),N“ (t),N…。 (t)的支承区间将减少一个,Ⅳ . (t), (f)的支承区间将减少两个,如图4所示 图4两个连续的二重节点的B样条基 Fig.4 A B—spline base function with two continuous 2一multi konts 在t;,t…处分别只有两个基函数非零,且 -3.4(t )+ -2I4(tf)=1; -1.4(t…)+Ⅳf,4 (tf+1)=1; -3,4( )Pi一。+ -2,4( )Pi=QI 一l-4( +1)Pi+l+ -2,4(ff) +2:Qi+l P,( +。)= ( + 一Pi+。)0( + 一 +。) +3 i P,( )=『_ ( 一Pi一。)II(Pi—Pi一。) 即P P ,Q ,Q…,P…,Pm皆共线,曲线在 Q ,Q…处均为C 连接,因而在Q Q…间形成直 线,如图5. 图5夹直线的曲线设计 Tab.5 A CU_rVe inserted witll a line segment 2 曲面中棱线,直纹面,棱角及平面 片的构造原理与方法 已知拓扑型值点阵{Q } mn J:。∈ 。中,要构 造一张双3次B样条曲面插值这些数据点,采用 4个角点处节点矢量取为三重节点的办法,使数 据点阵四角的数据点成为整张曲面的4个角点, 使其它数据点成为对应的相邻曲面片的公共角 点,每一排数据点位于曲面的一条等参数线上,由 反求控制顶点算法知,可建立未知控制顶点 .=0,1,…r/t+2, =0,1,…, +2的线性方程组, 求解过程化为两个阶段的曲线反求控制顶点问 题.待求的双3次B样条曲面方程为: 肌+2n+2 P(M,W)=2 o 2oN u)N w)P ( ( =维普资讯 http://www.cqvip.com 第13卷第3期 贺志民:B样条曲线曲面特殊形状的构造原理与方法 47 , ( )P J , ( ) 形成一条棱线, 向的控制多边形和截面曲线如 图6(其中“.”表示控制顶点,“ ”表示型值点, 虚线表示截面曲线或控制曲线,实线表示控制多 边形),从图中可以清晰的看到:第 行的每一个 n+2 令P ( )= 』 ,4( )P , =0,1,…,m+2, m+2 得:P。( , )=∑P。( )Ni. ( )这样相当于曲线 问题中控制顶点被控制曲线P ( )所代替,若固 定一参数值 ,就给出了在这些控制曲线上m+3 个点P ( ), 0,1,…,m+2,而这些点又作为控 型值点都与它两旁的控制顶点共线,截面曲线在 该点与控制多边形相切. 若型值点阵{Q } i= 0J:。=0∈ 中,第如行 制顶点就定义了曲面上以 为参数的等参数线, 当参数 取遍整个定义域时,就描述了整张曲 面,并且其中有n+1条插值给顶的数据点,每一 条插值数据点阵的一列数据点.这n+1条等参数 线称为截面曲线-6 J,分别对这些截面曲线反求控 制顶点P“, =0,1,…,m, =0,1,…,n+2,则 m+2 ~ si( +3)=LN,,4( +3).PiJ=Q J, =0,1,…,m, J_=0,1,…,n,一张以这些截面曲线为它的等参数 线的曲面,需要一组控制曲线来定义截面曲线的 控制顶点P ( )=P , 0,1,…,m+3, =0, 1,…,n.以型值点Q 的 参数值 , =0,1, …,n为控制曲线节点,问题转化为m+3条曲线 的反求控制顶点问题: n+2—— ,4( +3)P =P =0,1,…,n,J_:0, 1,…,m+2; 解这些方程组,得到所求B样条曲面的(m+ 3)X(n+3)个控制顶点P , =0,1,…,m+2, =0,1,…,n+2.其构造过程完全与以上所述相 同,分两步进行,第一步求得截面曲线及其控制多 边形,第二步求得控制曲线及其控制多边形,从而 得出控制网格,它与型值点一起唯一界定了所求 的双3次B样条曲面.因此在构造复杂曲面时, 只需按照具体要求考虑两个参数方向的截面曲线 及控制曲线使它们分别满足要求即可.下面详细 介绍复杂曲面中棱角、直纹面、尖点、棱角、平面片 的构造方法. 2.1棱角、直纹面的构造 若值点阵{Q ,} i= 0 。∈ 中,第i。行元素为 二重点,既Q J=Q J,(J_=0,1,…,n),则 向 的n+1条截面曲线中每一条都将在相应点 Q √,( =0,1,…,n)处c 连续,每个 _I ., Q .1.,,( =0,1,…,n)对应的控制顶点P : , P¨,( =0,1,…,n)将与Q - 共线,且P , P .J在Q ̄o-1j处截面曲线相切,而u向由于无重 型值点控制曲线仍保持c 连续,这样由截面曲 线、控制曲线、型值点阵唯一确定的曲面使在第i。 和第芘+1行都为二重点,即Q =Q f,且 Q¨ =Q +2j,(J=0,1,…,n),此时 向的n+1 条截面曲线中每一条都将在Q f,Q” 处c 连 续,相应控制顶点P 一lJ,Pioj P +lJ,P +2J,(_,= 0,1,…,n)都在直线Q ,Q +l1f上,n+1条线段 Q¨Q , 分别被光滑嵌人截面曲线,而 向控制 曲线仍C 连续,这样曲面便在第 行与第芘+1 行之间形成直纹面, 向控制多边形和截面曲线 的情形与夹棱线曲面类似(即图6所示). 图6 夹棱线曲面的控制多边形及截面曲线 Tab.6 Control polygon and section curves of ltn line— inserted Bur[ace 2.2尖点、棱角、平面片的构造 若型值点阵{Q } i= 0 。∈ 中,在两个方向 都为三重点,即Q J=Q ,( =芘一1,如+1),这 样将在 和 两个方向分别有三条截面曲线或 控制曲线在Q 处ctJ连续,并且每条曲线都有 一个控制顶点通过点Q 两旁的其他两个顶点 与Q 的连线分别与截面曲线或者控制顶点相 切,因此曲面在该点形成尖点, 的控制多边形和 控制曲线如图7所示,Q 是三个控制多边形的 共同顶点,对应的三条截面曲线也通过该点,并且 该点与它邻近的控制顶点所在的直线通过下一个 型值点,这样尖点周围不会出现非正则曲线, 向 与之相同. 若型值点阵{Q i= 0J=0∈ 中,Q 以及 Qio,Jo+1都是两个方向上的二重点,即Q 『.』0一 = Q 一l =Q【0IJo一1=Q Jo,且Qi0-I Jo+I=Q 一I、Jo+2= Q 加+ =Q 加 ,则这实际上相当与 向io一1的 第i。+1条截面曲线都分别通过单个二重型值 维普资讯 http://www.cqvip.com 48 湖南环境生物职业技术学院学报 2007年9月 点,因而C 连续,并且控制多边形及截面曲线与 夹棱线时W向情相同;而u向第i。一1和第i。条 控制曲线在Q 处重合,都被光滑地嵌入直线段 QioJoQ 『0+。,该方向上的控制多边形和控制曲线 如图8,有4个控制顶点在直线Q Q 『0+ 上,两 个控制多边形和两条控制曲线在这两点间重合, 从而整个曲面在Qio,JoQ 『0+ 形成棱角. Q如一l痂一1 Q 0—1 +1 == 一1 =Q ̄oJo一1=Q ̄oJo 一1 +2=QioJo+1=Q ̄oJo+2 =Ql0+2,k一1=Q +2,k Q +1 一1 Q +10+1,k+2=Q +2痂+1=Q +2而+2 Q 0+1而+1 Ql=则W向的第i。一1及i。条截面曲线被光滑嵌 入直线QioJoQ +1第i0+1及i0+2条截面曲线 被光滑嵌入直线Q J0Q + J0+ ,而u向的第 一 1及矗条控制曲线被光滑嵌入直线段Q 『0 Q 『n+ ,第 +1及 +2条控制曲线被光滑嵌入 直线段Q + J0Q + + ,并且在这4个相邻点都为 C 连续,因而在4点QioJoQ J0+ Qio+lJoQ +1 J0+1间 形成平面片.两个方向上的控制多边形及控制 (或截面)曲线都与夹棱角曲面中的 向情形类 似. 图7 夹尖点曲面的控制多边形及截面曲线 Tab.7 Control polygon and section CUn ̄'es of a cusp— inserted surface 参考文献: [1]朱心雄.自由曲线曲面造型技术[J].北京:科技出版 社,2000. 若型值点阵{Q J} J:。∈ 向的二重点,即 中,Q J0, [2]姚傲秋,周儒荣,丁秋株复杂组合曲线的设计与拟合 ——重节点B样条法[J].航空学报,1984,1(1):34— Q 。J0+ ,Q +。J0,Q + J0+ 四个相邻点都是两个方 38. [3]施法中.计算机辅助几何设计与非均匀有理B样条 [B].北京:航空航天大学出版社,1994. [4]ChenQY,WangGZ.A class ofBezier—like cu ̄es[J]. Computer Aided Geometric Design,2O03,z0(3):29—39. [5]Deng C S.,Wang G Z.On onvCergence ofthe ontCrol Poly- gons Series 0f C—Bezier Curvs[J].GMP,e20O4(1):49— 55. [6]方美娥,满家巨,汪国昭,等.重型值点阵的样条插值 统一求解算法[J].高校应用数学学报,2006,21 图8 夹棱角曲面的控制多边形及截面曲线 Tab.8 The control polygon and section CUn ̄'es of an ar_ rise—inserted surface (1O):95—104. Principles and Methods on Constructing Special Shapes 0f B—spline Curves and Surfaces HE Zhi—min (College of Science,Zhejiang Forestry University,Hangzhou 311300,China) Abstract:When designing CHIVES and surfaces,we often need insert some special shapes.For example,inser- ring cusps and lines in a CHIVe and crease and ruled suI ̄aces in a surface.This can be obtained by muhipoint —method.But it,S still dificult to insert cusps.plain patches or arrises into a surface.While these special shapes are common in geometry designs.In this paper,principles and methods on constructing plain patches, cusps and arrises in a surface were put forward through founding some point—matrixes.8figs.,6refs. Key words:plain;patches;cusp arrises