自由曲面变形

2024-09-23

自由曲面变形(精选7篇)

自由曲面变形 篇1

0 引言

在几何造型领域,非均匀有理B样条(NURBS)的出现为自由形状的数学描述提供了近乎完美的方法。但由于伴随它的形状修改技术(改变权因子或控制顶点)是有限的,因此在产生复杂的形状时,人们不得不借助于其他高级形状修改技术——自由变形。迄今为止,有关自由变形方法的研究已经取得了相当的成就,各种不同的变形技术已在实践中发挥着作用。然而寻求新的、有效而直观的变形方法仍然是计算机图形学中日益重要的研究领域。

事实上,几何变形体的变形本质是其所在空间自身到自身的一个映射,通过该映射改变变形体的几何形状、光顺程度等,以满足人们的设计需要。整体与局部的变形方法[1]是第一个进入CAD领域的变形造型技术。该方法及其推广[2]能够进行常规变形(如弯曲、扭曲、尖角等),但要产生任意形状是很难的。自由变形(FFD)方法[3]克服了上述缺点,被广泛用于几何造型、计算机动画、科学数据可视化等领域[4],但其变形控制不灵活,变形难以精确地达到预期效果。继承FFD思想的轴变形(AXDF)方法[5]、曲面控制变形方法[6]等,不同程度地改进了FFD方法,增强了控制灵活性。总体来说,这些方法在预定或调节变形的范围、控制变形的方向和变形的幅度、确保变形区域边界处的连续性等方面尚不够理想。文献[7,8,9,10,11]提出了基于伸缩因子的参数曲线曲面自由变形方法,利用伸缩因子作用于待变形曲线曲面方程,直接对待变形对象施行映射,产生变形效果。该方法在确定变形范围、变形边界处的光滑指数,以及调节变形方向和变形幅度等方面有较好的效果,但构造的伸缩因子主要基于幂函数类和余弦函数类等超越函数,变形后的曲线曲面均为超越曲线曲面,需利用逼近方法进行转换;另外,因伸缩因子都只能在单点达到峰值,且变形区域为圆域,故对参数曲面的自由控制变形有着较大的限制。为减少限制,不少科研工作者对该方法做了进一步的研究,取得了一些成果[12,13,14]。

在文献[7,8,9,10,11]研究的基础上,本文提出了一种新的基于多项式的伸缩因子,该伸缩因子包含了已有伸缩因子的优点,在区域上能达到峰值,且可用分段多项式形式表示,变形操作对Bézier曲面和NURBS曲面具有封闭性,能将变形区域由圆域推广至四边域,使曲面变形的效果更加丰富。

1 基本伸缩因子的定义及性质

定义1 设n为正整数,对于R2中的以(u0,v0)为中心的圆形区域存在:

U1=((u,v)|(u-u0)2+(v-v0)2≤r21)

U2=((u,v)|(u-u0)2+(v-v0)2≤r22)

t=(u-u0)2+(v-v0)2,作R2上的函数:

式中,f(u,v)为R2上的基本伸缩函数;n为光滑指数。

设闭区域U1、U2对应的边界曲线为C1、C2,其中,U2为支撑区域,U1为峰值区域,则基本伸缩函数f(u,v)具有如下性质:

(1)当0≤f(u,v)≤1,且(u,v)∈U1时,f(u,v)=1;当(u,v)∉U2时,f(u,v)=0。如图1所示。

(2)区间峰值性:在U1上,f(u,v)取最大值1;在(u,v)∉U2上,f(u,v)取最小值0。特别当r1=0时,f(u,v)具有单峰性。如图2所示。

(3)if(u,v)ukvl|C1=0if(u,v)ukvl|C2=0,0i=k+ln-1

定义2 令E(u,v)=E(u,v,u0,v0,r1,r2,n,h)=1+hf(u,v),则称E(u,v)为R2上带参数nh的多项式伸缩因子(h为伸缩参数)。支撑区域U2的边界和峰值区域U1的边界分别为

C2=((u,v)|(u-u0)2+(v-v0)2=r22)

C1=((u,v)|(u-u0)2+(v-v0)2=r21)

伸缩因子E(u,v)具有如下性质:

(1)E(u,v)|C2=1。

(2)区域峰值性:在U1上,E(u,v)取最大值,特别当r1=0时,E(u,v)具有单峰性。

(3)iE(u,v)ukvl|C1=0iE(u,v)ukvl|C2=0,0i=k+ln-1

2 空间参数曲面的变形与控制

2.1以任意点O′为中心的变形

p(u,v)=(x(u,v),y(u,v),z(u,v))T为定义在参数(u,v)平面R2中区域U上的Cr类曲面(r≥1),Eij(u,v)=E(u,v,u0,v0,r1,r2,n,hij)(i,j=1,2,3),为具有相同支撑区域和光滑指数的伸缩因子,光滑指数nr+1,U1⊂U2⊆U,中心O′(u0,v0)=(x(u0,v0),y(u0,v0), z(u0,v0))T,令

为支撑区域U2上的伸缩矩阵,则变形后的曲面pd(u,v)与变形前的曲面p(u,v)可表示为

pd(u,v)=T(p(u,v)-O′)+O′ (u,v)∈U (1)

2.2变形的几何意义

T=(dij)3×3,e1、e2、e3为线性无关的单位向量,记p(u,v)-O′=p1e1+p2e2+p3e3,则式(1)可表示为

由此可看出式(1)所定义的变形几何含义是:在支撑区间内,在原曲面上的每一点p(u,v)处,对向量p(u,v)-O′在仿射坐标系[O′,e1,e2,e3]下的坐标(p1,p2,p3)T作仿射变换,变换矩阵就是伸缩矩阵T

此外,如果作线性变换t¯=(r2-t)/(r2-r1),则定义2中的伸缩因子E(u,v)可表示为

即为分段2n次多项式,运用Bernstein基可与幂基相互变换的原理[15],可进一步验证变形操作对Bézier曲面和NURBS曲面均具有封闭性。

2.3变形的交互控制方法

在变形过程中,通过调控变形中心、支撑区域、峰值区域、光滑指数和伸缩参数,可以灵活地控制变形曲面的形状:

(1)改变O′,可以控制曲面的相对变形中心。

(2)改变r1、r2,可以控制曲面的支撑区域和峰值区域。

(3)改变光滑指数n,可以控制变形曲面在边界C1、C2处的光滑性。

(4)改变伸缩参数hij(i,j=1,2,3),可以控制曲面的伸缩方向和调整各方向的伸缩幅度:①取h11=h≠0,hij=0(i,j=1,2,3,且ij不同时为1),即T=diag(E,1,1),可以控制曲面沿X轴的凹凸变形;②改变h11的符号,可以控制曲面沿X轴正向或负向变形;改变|h11|的大小,可以控制曲面沿X轴变形的幅度;③改变h12、h13的大小,可以得到曲面沿X轴的剪切效果;类似地,可以控制曲面在Y轴、Z轴方向上的变形效果。

实际应用时,可同时改变各控制参数,以达到理想的变形效果。还可以结合坐标系变换,以改变伸缩变形的主方向,从而得到更加丰富的变形效果。

3 四边域上的空间参数曲面自由变形

若令定义1中的t=max(|u-u0|,|v-v0|),则变形区域将变为R2中的以(u0,v0)为中心的正四边行区域,即

D1=((u,v)|u0-r1≤u

u0+r1,v0-r1≤vv0+r1)

D2=((u,v)|u0-r2≤u

u0+r2,v0-r2≤vv0+r2)

式中,D2为支撑区域;D1为峰值区域。

可以类似地定义正四边域上的伸缩函数f(u,v)和伸缩因子E(u,v),它们与圆域上的伸缩函数和伸缩因子有相似的性质,如图3、图4所示。

对于更一般的矩形变形区域,伸缩函数的定义如下:

定义3 设n为正整数,0≤a1<a2,0≤b1<b2(当a1=0时,b1=0;当a1≠0时,b1/a1=b2/a2),对于R2中的以(u0,v0)为中心的矩形区域:

D*1=((u,v)|u0-a1≤u

u0+a1,v0-b1≤vv0+b1)

D*2=((u,v)|u0-a2≤u

u0+a2,v0-b2≤vv0+b2)

u^=|u-u0|,v^=|v-v0|,作R2上的函数:

式中,f*(u,v)为R2上的伸缩函数。

h为任意实数,令E*(u,v)=1+hf*(u,v),则称E*(u,v)为R2上带参数nh的多项式伸缩因子。其中D*2为支撑区域,D*1为峰值区域。

四边域上的伸缩函数f*(u,v)和伸缩因子E*(u,v)与圆域上的伸缩函数和伸缩因子有相似性质。其变形模型以及变形控制方法均与圆域上的变形模型以及变形控制方法相类似。

4 应用实例

以抛物面p(u,v)=(u,v,(2-u2-v2)/8+2)T(图5)为例,分别演示本文方法的实际效果及变形控制参数改变时引起的变形结果的改变。

圆域上的自由变形效果如图6~图10所示。其中相同的参数为O′=(0,0,2.25),n=4;不同的参数如表1所示。

四边域上的自由变形类似于圆域的效果,图11所示为h33=1时,沿Z轴上凸的区域峰值,图中,O′(0,0),a1=0.9,b1=0.6,a2=2.4, b2=1.6, n=2,h33=1;图12所示为h33=-0.4时,沿Z轴下凸的单峰值,图中,a1=b1=0,h33=-0.4;图13、图14所示分别为复合变形和叠加变形的效果。

图6~图14效果显示,不仅可以在单点或区域达到峰值,还可以改变变形区域形状,以及在同一或互不相交的支区间上进行复合变形。通过调控各参数,可以灵活地控制变形曲面的形状,得到丰富的变形效果。

5 结论

本文提出的基于多项式的伸缩因子包含了文献[7,8,9,10,11]所引入的伸缩因子的性质:能精确控制变形范围;变形模型简单、易于操作;控制参数具有明显几何意义,变形效果丰富;对一般参数曲面均适用,具有普遍性。与现有方法比较,本文方法具有以下优点:

(1)不仅能在单点上达到峰值,而且可以在区域上达到峰值。

(2)变形区域和峰值区域可以是圆域也可以是四边域。

(3)伸缩因子可表示为分段多项式形式,变形操作对Bézier曲面和NURBS曲面具有封闭性。

为使变形效果更加丰富,变形方法更加实用,下一步研究的方向是:

(1)研究的变形区域将突破简单的圆域和四边域,目标是在曲面上任意画一条闭曲线,变形能严格以此为界,且变形曲面在该曲线上光滑圆润。

(2)本文只利用几何变换矩阵研究了基于伸缩因子的伸缩变换,今后将结合几何变换的平移、旋转功能,进一步研究曲线曲面的平移变形和旋转变形。

(3)在本文讨论的曲面简单变形的基础上,利用提出的基于多项式的伸缩因子进一步研究曲面的周期变形。

(4)将本文方法拓展至网格,结合曲面拟合等方法,进一步研究网格曲面的编辑与变形。

自由曲面变形 篇2

自由变形技术是虚拟农业领域的重要研究课题之一。人们要真实的模拟农作物的整体和局部特征,对农作物的外观进行动态改变是十分重要的。在虚拟现实系统中,NURBS方法在形状定义方面有强大的功能和潜力。1991年国际标准组织ISO颁布的工业产品几何定义的STEP标准,就把NURBS作为惟一定义自由型曲线、曲面的数学方法[1]。因此,研究NURBS曲面表示的虚拟作物的自由变形是非常有意义的。尽管国内外的许多专家和学者已在自由变形方面开展了不少有价值的研究工作,但是大都针对外接多面体控制,使得自由曲面的自由变形问题缺乏有效的解决方法。针对这一问题,Ohtake提出了B样条曲面的变形方法[2],采用了曲面细分和PCCM技术[3],从一定程度上解决了样条曲面自由变形问题,但是这种方法存在一些不足:算法的参数化过程复杂,控制网格难以贴近曲面;自由变形不够实时精确。为此,本文提出一种新的针对NURBS曲面的自由变形算法,弥补了这两方面的不足,并可用于对NURBS曲面作物模型进行精确实时的变形模拟。

1相关概念和理论

1.1 Loop细分规则

Loop细分是1987年由Loop提出的一种基于三角网格的细分曲面算法[4]。算法在每一次细分过程中将三角形面片一分为四,在三角网格的每条边上分裂出一个新顶点,称为e顶点,原网格的顶点在变换之后称为v顶点,重新连接e顶点和v顶点便得到细分一次后的4个新三角形面片。下面对本文采用的细分规则进行详细描述。

(1) 对内部边V0,V1, 如图1(a)所示,设共享此边的2个三角形面为V0,V1,V2和V0,V1,V3,则其对应的e顶点定义为Ve=38(V0+V1)+18(V2+V3)

(2) 对内部顶点V,设其相邻顶点为V0,V1,V2,…,Vn-1,如图1(b)所示,则相应的v顶点定义为Vv=(1-nβn)V+βni=0n-1Vi。其中,βn=1n(58-(38+14cos2πn)2)

(3) 对边界边V0,V1上的e顶点定义为Ve=12(V0+V1),如图1(c)、(d)所示,边界顶点V上的v顶点定义为Vv=18(V0+V1)+34V。其中V0,V1为其相邻顶点。

1.2 NURBS曲面

NURBS曲面方程有多种表示方式,这里给出它的有理分式表示形式。一张k×l次NURBS曲面可表示如下[5]:

p(u,v)=i=0mj=0nωi,jdi,jΝi,k(u)Νj,l(v)i=0mj=0nωi,jΝi,k(u)Νj,l(v)

式中:di,j(i=0,1,2,…m;j=0,1,2,…,n)是控制顶点阵列;ωi,j是与顶点di,j联系的权因子;Ni,k(i=0,1,2,…,m)和Nj,l(j=0,1,2,…,n)分别为u方向k次和v方向l次规范B样条基,它们分别由u向和v向的节点矢量U=(u0,u1,u2,…,um+k+1)与V=(v0,v1,v2,…,vn+l+1)按德布尔递推公式决定。

2算法实现

算法主要包括3个主要过程:曲面细分,建立曲面片局部坐标系并计算控制点局部坐标,计算各细分层次下网格点新位置实现多分辨率变形。

2.1 曲面细分

NURBS用一组控制顶点阵列来表示一个曲面,也就是说,只要确定一组控制顶点就可以生成一个曲面,并且只要调整控制顶点就可以控制曲面形状。在本文算法中利用NURBS曲面这一性质,将细分插入的曲面片新控制顶点作为自由变形的控制点,确定局部坐标,进而实现变形。

将曲面分成较为均匀的4片,插入的控制顶点应在相应方向控制顶点序列的中央附近。初始控制顶点为di,j(i=0,1,2,…,m;j=0,1,2,…,n),在这里,取u方向控制顶点的插入位置为第⎣m/2个与第⎣m/2+1个控制顶点之间,v方向取⎣n/2与第⎣n/2+1个控制顶点之间。

因此,在u方向,插入的新控制顶点du可以写成[6]:

du=(1-α)ωm/2[XC<ΚΗ5.tif>;%35%35],jdm/2[XC<ΚΗ5.tif>;%35%35],j+αωm/2[XC<ΚΗ5.tif>;%35%35]+1,jdm/2[XC<ΚΗ5.tif>;%35%35]+1,j(1-α)ωm/2[XC<ΚΗ5.tif>;%35%35],j+αωm/2[XC<ΚΗ5.tif>;%35%35]+1,j

于是:

α=ωm/2[XC<ΚΗ5.tif>;%35%35],jdudm/2[XC<ΚΗ5.tif>;%35%35],j¯ωm/2[XC<ΚΗ5.tif>;%35%35],jdudm/2[XC<ΚΗ5.tif>;%35%35],j¯+ωm/2[XC<ΚΗ5.tif>;%35%35]+1,jdudm/2[XC<ΚΗ5.tif>;%35%35]+1,j¯

从而有:

u=um/2[XC<ΚΗ5.tif>;%35%35]+1+α(um/2[XC<ΚΗ5.tif>;%35%35]+k+1-um/2[XC<ΚΗ5.tif>;%35%35]+1)

类似地,在v方向插入新控制顶点dv于控制网格的di,n/2[XC<ΚΗ5.tif>;%35%35]di,n/2[XC<ΚΗ5.tif>;%35%35]+1¯边上,有:

β=ωi,n/2[XC<ΚΗ5.tif>;%35%35]dvdi,n/2[XC<ΚΗ5.tif>;%35%35]¯ωi,n/2[XC<ΚΗ5.tif>;%35%35]dvdi,n/2[XC<ΚΗ5.tif>;%35%35]¯+ωi,n/2[XC<ΚΗ5.tif>;%35%35]+1dvdi,n/2[XC<ΚΗ5.tif>;%35%35]+1¯v=vn/2[XC<ΚΗ5.tif>;%35%35]+1+β(vn/2[XC<ΚΗ5.tif>;%35%35]+l+1-vn/2[XC<ΚΗ5.tif>;%35%35]+1)

曲面细分过程的算法描述如下:

输入为NURBS曲面nline,细分后的4个NURBS曲面存于nline[4]中,输出为细分后控制顶点集,存于数组nlinepoint[k][l]中。其中k,l,分别是u方向与v方向B样条基函数的幂次。

步骤如下:

(1) 在nline控制网格的dm/2[XC<ΚΗ5.tif>;%35%35],jdm/2[XC<ΚΗ5.tif>;%35%35]+1,j¯di,n/2[XC<ΚΗ5.tif>;%35%35]di,n/2[XC<ΚΗ5.tif>;%35%35]+1¯上插入控制顶点du,dv

(2) 计算插入控制点后u, v方向控制顶点的插入新位置,即du1,dv1。

(4) 重复插入节点,插入次数为kl中最大值,得到控制顶点集数组nlinepoint[k][ l] 和NURBS曲面数组nline[4]。

2.2 建立曲面片局部坐标系

上阶段曲面细分将整张NURBS曲面一分为四,以4个曲面片的相交控制点为原点建立局部坐标系,再将其他控制点参数化到局部坐标系中,得到变形控制点的局部坐标。具体方法如下:

取NURBS曲面上相交控制点p(uq,vq)作为曲面控制点(设为Q点)的局部坐标系原点O,如图2所示。坐标轴为:

{x=pu|(uq,vq),y=pv|(uq,vq),z=x×y},把x,y,z单位化。这样就建立了局部坐标系(p(uq,vq),x,y,z)。Q点的局部坐标(u,v,w)通过解线性方程Q=p(uq,vq)+ux+vy+wz得到。Q点的局部坐标可以表示为五分量的形式,即[7]:εQ={uq,vq,u,v,w}。

2.3 NURBS曲面多分辨率变形

在Ohtake的算法中,自由变形的最终效果取决于物体点在自由曲面中最近面的距离计算结果,若距离越近,变形越精确,这样使得在某些情况下自由变形不够精确。因为由细分曲面转化拼接成的自由曲面很难像NURBS曲面那样有较好的紧密性。

为了弥补自由曲面拼接紧密性的不足,本文算法采用NURBS曲面建模并在达到各细分层次时以相交控制点作为局部坐标原点,当控制点数小于某一阈值dm时,认为达到了该细分层次下的最佳变形效果。NURBS曲面的多分辩率变形通过N_Deformation(nurbs)函数实现,算法如图3所示[8]。

3实验与分析

3.1 实验平台

操作系统为Windows XP;开发语言为C++/C;开发工具为Microsoft Visual C++ 6.0;三维图形编程接口为OpenGL/GLUT;CPU类型/主频为Intel Pentium 4/2.66 GHz;内存为2 GB。

3.2 结果分析

本文算法的变形原始模型如图4所示,小麦叶模型和折断点区域图。小麦叶通过主线方法建模而成,折断点可以人为控制选取,模拟由于外力作用使得小麦叶发生折断现象。其中,小麦叶采用NURBS曲面片建模,每一片小麦叶的控制点数目为175,折断区域的控制点数目为41。

为了取最佳的细分层次level和采样点阈值d的值,使整个变形过程有较好的实时性和精确性,我们进行以下实验:针对小麦叶的原始模型选取如图4所示的折断点区域不变,取不同的level值对初始控制网格进行细分,并记录下来平均自由变形时间t和每一细分层次下的近似采样点数dm的值。

当level在3~8之间取值时,平均自由变形时间t和层次采样点数dm如表1所示。

由表1可以看出,一方面,随着细分层次level的增大,平均自由变形时间在增加,并且增加的倍数越来越多;另一方面,层次采样点数dm的值变化越来越小。根据本文算法d的计算过程可知,level的增加使控制点更加密集,dm也就越来越接近原始模型网格点。这样使得自由变形的结果就越精确。根据以上分析,实时性和精确性不可能同时达到最理想。在对实时性要求较高的场合中,level可取偏小的值;对精确性要求较高时,level取偏大的值。

在表1中,将level为9时的dm值看作是采样点阈值,注意到当level为5时,dm与阈值已相差不大,并且平均自由变形时间较小。此时,dm的误差为0.01,考虑到其他一些不确定因素,误差取0.02.因此,在level取5,误差取0.02时,采用本文算法可以使本例中自由变形具有良好的效果[9]。

本文算法与Ohtake的算法相比,具有较好的精确性和实时性,这是因为:

(1) 采用NURBS曲面作为模型的初始控制网格,首先插入具有清晰几何意义的控制顶点,并通过建立局部坐标系,使之与模型更加贴近,从而使变形更加精确;

(2) 采用了简单有效的Loop细分曲面方法,可以快速的确定各细分层次下的控制点集;

(3) 通过控制细分层次进行精确多分辩率变形,避免了由于样条曲面间不紧密而造成的变形结果不精确。

4结语

本文提出了一种针对NURBS曲面的自由变形算法。该算法将Loop细分技术引入到曲面变形中,通过对曲面细分生成的相交控制点建立局部坐标系,计算控制点坐标进行自由变形,并提出了通过曲面细分层次控制进行多分辨率自由变形的方法。算法可以应用于虚拟场景中由NURBS曲面建模的物体的自由变形,在对精确性和实时性要求比较高的场合,对增强虚拟现实系统的逼真感有良好的效果。但是本文算法也有一定的局限性,只能应用于NUBRS曲面的自由变形,还有待进一步完善,以便更好的应用于其他自由曲面。

参考文献

[1]GRIESSMAIR J,PURGSTHOFER W.Deformation of so-lids with trivariate B-spline[C]//Proc.of Eurographics'89.North-Holland:Elsevier Sicence Publishers,1989:137-148.

[2]OHTAKE Y,BELYAEV A,ALEXA M,et al.Multi-levelpartition of unity implicits[J].ACM Transactions onGraphics,2003,22(3):463-470.

[3]PETERS Jorg.Patching Catmull-Clark meshes[C]//Pro-ceedings of ACM 2000SIGGRAPH.USA:ACM,2000:255-258.

[4]LOOP C T.Smooth subdivision surfaces based on triangles[D].Utah,USA:Department of Mathematics,Universityof Utah,1987:33-54.

[5]施法中.计算机辅助设计与非均匀有理B样条[M].北京:高等教育出版社,2001.

[6]陆亚文,李际军.一种基于快速拟合的NURBS曲面实体建模方法[J].计算机仿真,2008,20(10):105-109.

[7]武文.一种NURBS曲面转化为Bezier曲面片的改进算法[J].电子科技大学学报,2009(1):51-54.

[8]翼世军,王阳,吕汉明.三角形网格多面体空间四边界区域的数据参数化[J].吉林大学学报,2009(2):458-462.

DMFFD的曲面变形技术研究 篇3

由于FFD存在固有的问题, 所以在FFD变形的基础上, 又提出了许多FFD变形的改进算法, 如直接操作自由形式变形[3], 扩展自由变形[4]等直接操作自由形式变形 (DMFFD) 是直接操作物体的顶点, 来反求得控制点的位移, 简单方便, 容易操作, 且因是直接变形而能够达到精确变形, 解决了FFD变形四个方面的问题。

但是直接操作自由形式变形只能移动物体的控制点, 变形方式唯一, 有些物体的变形是单纯靠移动控制点无法完成的。

本文对直接操作自由形式的变形技术进行介绍, 同时对直接操作自由变形进行了改进, 使其更加直观, 更多的选择性, 有更好的自主性, 较好的完成了曲面变形。

1 算法介绍

1.1 B样条曲线

与FFD变形相同, DMFFD变形也是把待变形的物体嵌入到参数空间 (称作变形空间) , 该参数空间由一些基函数组成。FFD变形采用的是贝塞尔基函数, 而因B样条具有很好的局部性和连续性, DMFFD采用B样条基函数。B样条曲线在形式上与贝塞尔曲线相似, 对于给定的n+1个控制点P0, P1, P2, …, Pn和节点向量U={u0, u1, …, um}定义P次B样条如下:

其中是次B样条的基函数, 也被称作Cox-de Boor递推公式, 其定义如下:

由B样条曲线可以很容易推导出B样条曲面和B样条体, DMFFD变形就是将待变形的物体嵌入到B样条体中。

1.2 直接操作自由变形技术

DMFFD是直接作用于待变形的物体, 把物体上的一点移动到指定的位置, 然后求得控制点的位移, 使得满足物体从源点移动到目标点的条件, 最后求得物体上其他点的变化。

DMFFD变形和FFD变形一样先建立控制晶格体, 然后在其上建立局部坐标系。

物体上的任一点都可以表示成下式所示:

这样局部坐标系的坐标就可以由下面公式求得:

然后, 在控制晶格上嵌入控制点, 选择变形基函数, 即可以得到变形公式:

其中l, m, n表示在三个方向上的控制点的个数l, ', m', n'表示各自基函数的次数。

DMFFD变形是移动物体上的一个顶点q到目标点q+∆q, 则其中的控制点的位移∆P, 可由 (5) 得出:

其中B是B样条的矩阵表示形式, ∆q是物体顶点到目标位置的位移, 简化得:

通过公式 (7) 可以求得控制点有多组解。其解的选择依据是:控制点总的位移最小。这样就可以求出:

其中B+表示伪逆阵。因为一次移动物体上一点, 所以B是一个单行的矩阵, 其伪逆阵如下:

结合公式 (9) , 可以得到控制点的位移, 进而求出物体上其他点的位移, 完成变形。

DMFFD的算法流程如图2所示:

2 直接操作自由变形技术的改进

上述的DMFFD变形采用B样条基函数。B样条曲线是Nurbs曲线的特例, Nurbs在控制顶点处加上一个权重, 使得曲线更具有一般性, 更加容易调整, 并且也具有较好的局部性和连续性。对于给定的控制点P0, P1, P2, …, Pn和节点向量U={u0, u1, …, um}以及权重, Nurbs曲线的定义如下所示:

其中是P次Nurbs样条的基函数, 公式同B样条基函数。一般来说, 权重wi是正的, 但是负的权重也有一些应用, 如果权重为0, 则对应的控制点对于计算曲线是没有影响的, 权重为0有时也称作无限控制点。

本文采用Nurbs作为基函数, 对DMFFD变形技术的改进。即是把待变形的物体嵌入到Nurbs平行六面体中, 可以得到Nurbs体张量积:

从上面公式可以看出, 改变控制点和权重, 都可以使得Nurbs体张量积发生变化, 从而使得物体发生变形。

2.1 首先考虑控制点的变化对变形的影响

DMFFD变形是直接移动物体上的点来求得控制点的位移, 使控制点的位移满足物体顶点的变化量。假设物体上的一点S移动到目标点T, 控制点的位移量为, 由此可以得出:

将Ri, j, k (u, v, w) 代入上式简化可得:

进而推导出:

通过物体的变化量来求得控制点的位移, 会有多组解, 用最小二乘思想, 选择一个使得其位移量最小的一个解, 作为控制点的位移, 这个解的形式如下:

其中表示伪逆阵, 由于是单行矩阵, 所以:+R R

将R+代入公式 (15) , 可以计算出控制点的位移:

然后通过变形公式, 就可以计算出物体其余点的位移, 即完成物体的变形。

2.2 其次考虑权重变化对物体变形的影响

通过公式 (11) 可以看出, 当控制点的权重发生变化时, 物体的顶点也会发生改变, 从而物体发生变形, 公式如下:

基于权因子的变形, 有两种形式。第一种是, 选择一个权因子, 然后再进行上述的DMFFD直接变形, 可以完成某些形状的构造;第二种是, 通过移动物体上的点来反求权因子的变化量, 使得满足物体上的顶点的变化, 来达到变形的效果, 这类方法类似于通过移动物体上的顶点来反求控制点的位移, 具体参见文献[5]。

调节权因子时, 权因子大于1, 则使得控制点的位移加权变大, 该控制点对应的控制模型区域形状变大;权因子小于1, 则使得控制点的位移加权变小, 该控制点对应的控制模型区域形状变小;权因子为0, 使得控制点为0, 该控制点对应的控制区域会产生特殊的形状。

所以, 调节Nurbs曲线的权因子和控制点, 都可以使得物体的形状发生改变, 对于一些形状的构造, 需要结合两者的变形方式, 这给DMFFD变形提供很大的灵活性以及选择性。

3 实验结果

本实验是在Virtual Box虚拟机ubuntu11.10上进行的, 其配置为758M内存, Intel core 2 cup E8200 2.66GHz主频, 15G的硬盘。

图3为sphere模型的变形过程。sphere模型有642个顶点和1280个面, 每个轴上共有四个控制点。图3-b、图3-c、图3-d是对z轴上的4个控制点的权因子进行调整的结果。可以看出, 通过调整权因子, 球形可以变形为拓扑结构不一致的模型。

a.原始曲面模型b.调节权因子变形c.调节权因子变形d.调节权因子变形

图3-b是z轴上第二个控制点和第四个控制点的权重为0的变形结果, 图3-c是z轴上第二个控制点和第3个控制点的权重为0的变形结果, 图3-d是z轴上第-个控制点和第四个控制点的权重为0的变形结果。

图4为vase模型的变形过程, vase模型有10113个点和19801个面, 对其进行DMFFD变形, 变形结果如下所示:

a.原始vase模型b.采用B样条的变形c.采用Nurbs的变形d.采用Nurbs的变形

其中在图4-c、图4-d是先进行权因子的调节, 然后再进行DMFFD变形, 其中图4-c是z轴上第一个和第三个控制点的权因子为1.5, 而图4-d则是z轴上第一个和第三个控制点的权因子为0.5。

图5为bunny模型的变形过程, bunny模型有35947个顶点和69451个面, 对其进行DMFDD变形, 变形结果如图5所示。

a.原始bunny模型b.采用B样条的变形c.采用Nurbs的变形d.采用Nurbs的变形

其中在图5-c和图5-d是先进行权因子的调节, 然后再进行DMFFD变形, 其中图5-c中是z轴第一个和第四个控制点的权因子为1.5, 而图5-d则是z轴第一个和第四个控制点的权因子为0.5。

4 结论

本文论述了直接操作自由变形技术, 将其运用于曲面模型, 并对其变形公式进行改进。实验表明, 直接自由变形技术能够很好的应用于曲面模型上, 并且能达到精确变形;改进后的直接操作自由变形技术有更大的灵活性, 更多的选择性, 更好的自主性, 权因子的变化会导致特殊变形的发生, 这对于实际的工程运用具有一定的指导意义。

摘要:本文首先介绍B样条曲线, 并推广到B样条曲面及B样条体, 然后在此基础上介绍直接操作自由变形技术 (Direct Manipulation of Free Form Deformation) , 将此技术应用于曲面模型上, 使得物体发生变形。在此基础上, 对直接操作自由形式变形进行了改进, 提出了以Nurbs曲线作为变形基函数的变形方法;并且讨论了Nurbs曲线的控制点和权因子的改变对变形的影响;然后, 结合Nurbs曲线控制点和权因子的变化, 完成DMFFD变形;最后, 比较了以Nurbs作为变形基函数与以B-spline作为变形基函数变形的不同。实验结果表明, 改进后的DMFFD变形有更好的选择性和自主性。

关键词:检测技术与自动化装置,直接操作自由变形技术,Nurbs曲线,权因子

参考文献

[1]SEDERBERG T W, PARRY S R.Free form deformation of solid geometric models[J].Computer Graphics, 1986, 20 (4) :151-160.

[2]徐岗, 汪国昭, 陈小雕.自由变形技术及其应用[J].计算机研究与发展, 2010, 47 (2) :344-352.

[3]WILLIAM M HSU, JOHN F.HUGHES, HENRY KAUFMAN.Direct manipulation of free-form deformation[J].Computer Graphics, 1992, 26 (2) :177-184.

[4]SABINE COQUILLART.Extended freeform deformation:A sculpturing tool for 3D Geometric Modeling[J].Compute Graphics, 1990, 24 (4) :187-196.

自由曲面模具精整加工分析 篇4

模具是机械加工中重要的生产工具, 因此用模具生产的产品的质量好坏, 以及使用寿命的长短, 都与模具表面粗糙度的高低有很大的关系。此外, 产品的耐磨、防腐蚀和抗疲劳等性能的好坏也与模具表面质量有直接的关系。由于先进技术的发展特别是数控、电火花加工以及CAD/CAM系统的应用, 使得复杂曲面的加工基本实现了自动化, 然而模具的精加工技术却受到一定的限制, 一直停留于手工操作的阶段, 而精加工工序占总加工量的30%~40%, 因此成为模具加工行业的一大难题。

1 非传统整形抛光

1.1 电化学光整加工

电化学及其复合光整加工技术主要是依据金属工件表面的电化学阳极溶解原理, 属于离子的去除。因此电化学光整加工工艺生产率约为机械光整加工的5~10倍。但是抛光效果也受到电解液和电流密度以及电解时间和电解温度的影响。传统的电化学抛光工艺加工已经具备很高的效率, 但是表面粗糙度质量较差, 只能较原来降低1~2级, 此外酸性的电解溶液也会对环境产生很大影响, 因此大型、复杂零件的光整加工一般不采用电化学加工技术[1]。日本学者对线切割加工型面进行光整加工采用脉冲电化学成型电极的方法, 实验结果获得了较好的表面质量;但这种采用成型电极加工的方法, 通用性较差[2]。电解加工采用脉冲电流主要目的是提高成型精度[3,4,5,6,7,8]。而且脉冲电化学光整加工对于提高工件表面质量有很大的作用, 例如降低表面粗糙度、提高表面反射率等。通过一系列的实验证实影响表面质量的重要因素有电流的密度以及电解液溶质。例如对1Crl8Ni9Ti试件和A3、45及T8钢试件, 电流密度宜采用40~55 A/m, 电解液质量分数15~25。总之电化学加工已经成为一种重要的光整加工技术。

1.2 磁粒光整加工

光整加工作为模具型腔加工的最后一道工序, 对于其后产品的质量有着很大的影响, 但是对于型腔表面形状复杂模具, 一般的光整加工手段却很难得到理想的效果。磁研磨加工法以其良好的柔性、自适应性、可控性特点, 在复杂形状工件的光整加工中发挥了巨大的作用, 越来越受到大家的关注。

所谓磁研磨法, 就是通过磁场中磁力的作用, 将磁性研磨粒子吸压在工件表面, 磁性研磨粒子在, 工件表面与磁极之间的间隙中沿磁力线整齐排列, 形成磁性刷, 最后由于磁力的作用压附在工件表面上。旋转磁场或旋转工件使磁性刷与工件表面产生相对运动, 从而完成对工件表面的研磨加工。磁力研磨的特点主要有: (1) 工件表面与磁极之间的间隙, 使得加工过程中具有很好的加工柔性, 因此可以对多种形状的表面进行加工处理。 (2) 位于加工间隙中的研磨粒子也形成了磁性刷, 能够随着工件形状而改变, 因此在工件表面的加工中, 不受表面形状的限制, 例如仿形压附、翻滚、分离。 (3) 磁力研磨加工中, 对于过去所无法加工的领域, 现在只需改变外部的磁铁变换磁力线的方向, 就可以达到控制磁性研磨粒子的轨迹, 使得磁性研磨粒子按照规定加工内表面[9]。 (4) 对于模具型腔、弯管内部、小瓶颈容器等普通刀具无法深入的内部表面的加工, 磁力研磨技术再次发挥了其独特的穿透性能。

1.3 机器人柔性抛光技术

工业机械手和机器人的快速发展为模具自动抛光加工提供了新的方向。目前处于世界领先地位的是日本的机器人模具抛光加工技术, 在我国复杂曲面的粗加工已经开始采用这种加工手段, 但是在重要的精加工领域始终没有很好地发展。目前机器人柔性抛光系统的主要特点包括: (1) 能够实现恒力抛光加工, 码盘读数用来确定进给摆杆的位置, 抛光力的值可以通过电机间的电流测量而得到。进行加工操作时, 抛光轮由丝杆带动实现运动, 并且在任意时刻能够保持加工时力的恒定不变。 (2) 加工过程中能够实现加工点及加工平面保持不变, 方便了编程。在加工过程中抛光轮的半径变化能够由轮径检测机构检测, 而抛光轮的横向进给运动主要由步进电机提供动力驱动滚珠丝杠。同时也使得加工平面上的加工点位置保持不变, 便于编程实现。 (3) 结构紧凑。摆杆机构的设计及对各个机构的优化, 缩减了整体尺寸, 减小了体积, 大大节省了空间。

2 超精密整形抛光

目前超精密加工技术, 已经从亚微米级向纳米级不断发展, 成为衡量一个国家机械制造水平的标准。但是我国机床的精度等级较低, 一定程度上限制了我国超精密加工技术的发展。但是对加工设备和环境质量要求较低的精密研磨抛光, 却能够得到很好的发展, 逐渐实现了纳米级甚至原子级的加工。

2.1 超声研磨抛光

超声研磨抛光的工作原理是在超声振动工具头的端面和工件表面之间填充磨料, 因此是一种非接触式超精密研磨方法。以一定的频率振动的超声振动工具, 带动微细磨料对工件表面进行冲击, 从而实现对工件表面的研磨, 通过工作台的平面运动或曲面运动, 实现对工件的加工。超声研磨应用范围很广, 不仅包括各种硬性、脆性以及塑性材料, 还包括平面、复杂曲面等。

2.2 离子束抛光

不同于机械抛光, 离子束抛光是在真空状态下使用离子枪将被充电的高能原子或离子射向工件, 当高能量的离子对工件表面进行撞击时, 能够实现原料的量子级去除, 并且材料去除量取决于离子束溅射的时间。但是这种加工方法效率较低, 而且要经过预抛光步骤, 才能够实现对非对称的自由曲面、球面和非球面等工件表面精加工处理。此外离子束抛光所用设备需要的成本较高。

3 结语

近年来新理论、新技术以及新工艺的不断涌现, 使得自由曲面模具精整加工技术不断发展。集成化、智能化、柔性化和网络化已经逐渐成为未来模具制造业的发展方向。因此技术革新和产业进步应该以提高产品质量缩小加工成本为发展方向, 同时还要尽量缩短设计和制造周期, 以达到降低生产成本, 最大限度地提高模具制造业行业发展水平, 满足用户需求的目的。

摘要:模具型腔表面的精整加工, 直接影响模具质量的好坏。以电化学、磁研磨和机器人3种非传统抛光技术为例, 概述了其工作原理、特点及应用, 对超声、离子束2种超精密加工技术作了简要介绍, 提出应以自动化技术引领工艺进步, 注重产品质量和用户需求。

关键词:精整加工,模具,抛光,机器人

参考文献

[1]刘今起.中性电解抛光及其对电物理加工的表面处理作用[J].电加工, 1993 (1)

[2]Masuzawa T.Quick Finishing of WEDM Products by ECM Using a Mate-electrode[J].Annals of the CIRP, 1987, 26 (1)

[3]Rajurkar K P, Zhu D, McGeough J A, et a1.New Development in Electrochemical Machining[J].Annals of the CIRP, 1999, 48 (2)

[4]Rajurkar K P, Kozak J, Wei B, et a1.Study of Pulse Electrochemical Machining Characteristics[J].Annals of the CIRP, 1993, 42 (1)

[5]Chetty O V, Murthy R V G K, Radhakrishnan V.On Some Aspects of Surface Formation in ECM[J].J Eng Ind, 1981, 103 (8)

[6]Konig W, Linderlaufp.Surface Generation in Electrochemical Machining[J].Annals of the CIRP, 1978, 27 (1)

[7]王建业, 徐家文.电解加工原理及应用[M].北京:国防工业出版社, 2001

[8]王建业.电解加工技术的新发展[J].电加工, 1998 (2)

自由曲面变形 篇5

热压罐成型是目前航空用先进复合材料构件成型的主要方法之一,在成型过程中产生的固化变形是复合材料构件成本过高和质量不稳定的主要原因。复合材料固化变形涉及碳纤维性能、树脂基体性能、模具结构、模具材料性能、固化温度场分布情况、固化制度、固化过程中化学反应、零件结构等多种因素,各种影响因素相互作用,综合作用的结果体现在复合材料零件的变形上,因此复合材料固化变形极其复杂,很难进行控制。固化变形问题直接影响复合材料在飞机上的应用,目前复合材料零件的外形精度控制已经影响了我国航空工业在复合材料应用方面的快速发展。

国内外学者从理论与试验方面做了大量研究工作,分析了各因素对复合材料构件成型质量的影响[1,2,3,4,5,6],也取得了骄人的成绩,但大部分研究者是对影响复合材料构件成型的若干种因素进行单独设计实验,研究对象主要针对几何结构相对规则的平板类、L型、U型、C型、T型构件、V型薄壁件的变形研究,对具有空间曲面的复杂结构的构件的变形研究较少[7],研究成果不具备普遍性,因此不能被很好的应用和推广。

针对这种现状,本文提出了一种新的固化变形规律获取方式,研究了变形修正的算法和切实可行的修正手段,并以曲面类零件-机翼作为研究对象,进行了试验验证,证明了该方法的实用性。

1 变形规律的获取

若要实现复材构件的变形修正,首先必须获取构件的变形数据,根据各处的变形量进行分析,研究减小变形的方法。现有的方法是在大量实验基础上,对固化工艺进行反复调整和对模具型面进行反复试凑或修正完成的,成本过高且生产效率低下;国内研究学者利用有限元分析软件[7,8]或人工神经网络方法[9,10],实现了固化变形的预测,但对于普通用户来说,由于预测模型建立难度较大、模型中考虑的因素不够全面及样本数据收集困难等问题,限制了该方法的实用性。

本文采用在标准工装上预铺复材型面的方式获取实验数据,总结某一类零件的变形规律,用以指导该类复合材料构件的变形修正。

1.1 标准工装设计

根据某一类复合材料构件的结构特点,设计了一套标准工装。根据结构及约束情况,将标准工装分为不同的区域,在铺制试验件时,根据零件特点选择标准工装上的合适区域制作,铺制方法和成型工艺应与复合材料构件完全相同,这样试验件的固化变形规律才能与实际生产的复材构件变形规律最为接近。对于同一类复材构件的制作,只要采用与试验件完全相同的成型工艺,修正时即可使用该试验件数据,无需重新铺制试验件。由于采用标准工装获取修正用试验件数据,避免了对产品成型模具的反复修正加工,大大降低了制造成本。

1.2 变形参数确定

为实现数模修正的目标,从试验件中提取数据、确定变形参数时应从如下两个方面进行考虑:

1)根据变形参数能重构试验件型面;

2)变形参数能描述试验件上任意一点在固化变形前后的空间位置及变形量;

本文根据曲面类零件的特点及固化变形情况,最终确定将试验件曲面按一定规则切分为若干截面,并在截面线上取长度、半径、法矢和角度参数作为变形参数。

1)长度(L):截面线上分段单元的长度;

2)半径(R):截面线上某一位置的曲率半径;

3)法矢(T):截面线上某一点的法矢方向;

4)角度(θ):截面线上任意一点处的切线与基准线的夹角。

1.3 变形规律总结

由于试验件的铺制与实际生产时复合材料构件的铺制采用完全相同的工艺过程和环境,因此,试验件数据包含了影响固化成型的各种因素综合作用的结果。通过对比分析试验件与标准工装相应区域的数据,可总结得到各参数的变化规律,表达如下:

式中,L'、R'、T'、θ'分别为试验件采样点处的长度、曲率半径、法矢量和角度值。L、R、T、θ为标准工装采样点处的长度、曲率半径、法矢量和角度值。

2 固化变形预测与模具型面修正

目前,有关减小固化变形措施的研究主要集中在两个方面,一是优化固化工艺[11,12,13],二是调整模具形状以补偿固化变形[14,15]。通过优化固化工艺,可以在一定程度上减小固化变形,但效果并不十分理想,仍需结合模具型面的补偿方法,才能最终达到提高复合材料构件成型精度的目的。

本文在总结试验件变形规律的基础上,提出了一种新的变形预测与模具型面修正算法,即根据影响变形的各参数变化规律进行反变形计算,生成新的数模,以补偿变形所造成的误差。具体修正过程如下:

1)根据曲面形状特点,按相互垂直的两个方向分别做若干截面,将其划分为网格面,其中曲率变化较大的方向作为修正主方向。沿主方向上需划分较多的点数,以提高型面拟合精度。具体点数的多少采用两种方式确定,一是由设计人员根据型面特征自行输入点数;二是根据允许的拟合误差计算满足精度要求的最少点数。

2)对网格顶点按修正主方向进行修正计算,得到新的网格顶点。修正算法如式(2)所示。

式中,V′为修正后的网格顶点,V为修正前网格顶点,k1~k4为各修正量的强度系数。当系数取值为1时,是按照变形规律的修正量1:1进行修正,当不为1时,按修正系数乘修正量进行修正。可根据实际情况单独调整或同时调整各项修正量的强度系数。

3)沿第二修正方向(与修正主方向垂直)修正计算,获得准确的边界数据。

此方向由于曲率变化较小,因此重点考察尺寸变化量,保证获得准确的型面边界尺寸。

4)根据修正计算后的顶点及边界重新构造曲面并进行光顺,生成新的模具型面,称之为“工艺数模”。当按工艺数模制作模具后,由于其中已经预留了复材制件的固化变形,因此,当零件脱模变形后,将获得理想的形状。

3 实例验证

为了验证算法的准确性,采用CATIA二次开发的方式,开发了复材修正模块,用于修正得到工艺数模。铺制了飞机机翼复材构件,经扫描逆向后得到铺制产品的实际型面数模,在CATIA软件中对比分析了零件数模与实际产品数模的形状误差,结果如图1所示。

不考虑边缘的红色噪声点,我们发现形状误差从中心向边缘逐渐变化,最大误差值为5.47mm。

在接下来的实验中,选取标准工装上的某区域铺制试验件,并获取试验件变形规律,按此变化规律和本文所述修正算法对产品数模进行反向修正,修正后的数模与零件数模对比分析结果如图2所示。

由结果可知,复材固化变形误差最大值已经降为0.338,得到了有效的控制,证明本文所述方法是行之有效的。

4 结论

1)根据某一类复合材料构件的结构特点,设计了一套标准工装,并采用在标准工装上铺制试片的方法,获取了复材构件固化变形规律。

2)提出了一种新的变形预测与模具型面修正算法,即根据试验件变形规律,对数模进行反变形计算,获取用于制作模具的工艺数模,并通过实例验证了该方法的可行性。

自由曲面变形 篇6

B-spline曲线曲面作为STEP工业标准NURBS曲线曲面的特例 (其权因子全为1) , 是曲面造型领域中描述工业产品几何外形的重要方法。由B-spline曲面的定义可知, 通过改变节点矢量与控制顶点都可以实现曲面的变形[1,2]。然而, 修改几何参数的方式对于复杂形状的曲面变形设计非常困难, 且难以达到工程上的几何光顺性要求和设计精度。

为了避免这些缺陷, 简化设计过程, 产生了基于物理的造型方法。Terzopoulos等[3]将基于能量模型的可变形曲线曲面造型技术引入到计算机图形学中, 模拟出旗帜在风中飘摆及地毯飘落等动态过程, 为基于物理的变形技术奠定了基础。近年来, 基于物理的变形方法受到研究者的广泛关注[4,5]。Celniker等[6]将有限元法引入到曲线曲面变形中, 将曲面划分为三角形板单元, 在载荷作用与几何约束下计算曲面变形。之后, 基于有限元法的曲面变形技术得到了广泛研究[7,8,9,10]。文献[7-8]采用有限元法求解曲线曲面变形的思想, 运用3次均匀B-spline描述变形曲线曲面, 给出了相应的有限元网格模型, 以控制顶点为求解未知量, 建立总刚度矩阵方程, 计算满足约束的曲线曲面。成思源等[9]推导了B-spline曲线曲面的可变形模型运动方程, 并对其有限元求解方法进行了研究, 用特征点作用下可变形B-spline曲线曲面的变形验证了有限元法的有效性。采用有限元网格近似参数曲面会导致曲面自身的拓扑发生改变, 因此, 难以精确描述曲面间的光滑拼接关系。文献[11]将初始几何体整体或局部地嵌入到横截面为圆形的梁结构中, 通过施加载荷使梁结构产生形变, 几何体作为梁结构的一部分在载荷作用下随梁结构一起产生变形。文献[12]基于控制网格建立了刚架模型, 实现了单张B-spline曲面形状修改。文献[11-12]避免了变形过程中曲面拓扑的改变, 但是仅适用于单张B-spline曲面。

笔者借鉴刚架受力变形的思想, 提出了一种刚架模型驱动多张B-spline曲面变形算法。通过“合并”曲面片的控制网格的手段创建刚架模型, 将曲面变形问题转化为刚架模型的变形。根据几何约束、曲面片间光滑拼接条件和选取的优化目标, 计算曲面片控制顶点的变化, 实现多张B-spline曲面片变形。

1 多张B-spline曲面刚架模型的创建

1.1 刚架模型

空间刚架模型是由梁单元相互连接而成的结构, 用于驱动曲面变形, 如图1所示。梁单元的节点称为刚架的节点, 节点的自由度为6, 根据自由度的不同, 可将节点分为自由节点、固支节点与铰支节点。

1.2 B-spline曲面的数学描述

B-spline曲面由2个方向的控制顶点网格、2个节点矢量和单变量B-spline基函数的乘积定义。假设给定由 (m+1) × (n+1) 个控制顶点Sij (i=0, 1, …, m;j=0, 1, …, n) 构成的阵列组成一张控制网格, 分别给定参数u (次数为k) 与v (次数为l) 和节点矢量U与V, 就可以定义一张张量积为k×l次的B-spline曲面, 其方程为

式中, Ni, k (u) 是由节点矢量U定义的k次B-spline基函数;Nj, l (v) 是由节点矢量V定义的l次B-spline基函数;N (u, v) 为B-spline基函数乘积矢量;S为控制顶点矢量。

1.3 单张B-spline曲面的刚架模型

为了更好地反映控制顶点位置的改变对曲面形状的影响, 用曲面的控制顶点定义刚架模型的节点, 依据控制网格的几何拓扑关系生成相应的刚架模型。图2所示为基于控制网格所创建的单张B-spline曲面的刚架模型, 圆球为节点。

1.4 多张B-spline曲面的刚架模型

工业产品的几何外形通常由4边域B-spline曲面片拼接而成, 且曲面片之间一般维持G1连续, 即曲面片的每个公共顶点与位于两侧的各一个相邻非公共顶点共线, 如图3所示, 其中, P、P'为公共边界处的重合点, P1、P2分别为两侧对应控制顶点。采取去掉重复控制顶点的方法合并控制网格, 建立多张曲面的刚架模型, 如图4所示。图4中, 黑色球为固支节点, 灰色球为自由节点。由图4可知, 刚架模型的节点和合并后的控制网格顶点是一一对应的, 故节点的位移量等价于控制网格顶点的位移量。

2 多张B-spline曲面约束变形计算

2.1 基于有限元法的刚架模型节点位移计算

刚架模型在承受载荷的情况下, 节点会产生相应的位移, 根据线弹性有限元方法可知, 载荷和节点位移满足如下方程:

式中, K为整体刚度矩阵;Δ为节点位移列阵;P为节点载荷列阵。

在曲面造型过程中, 为满足工程的设计要求, 将曲面设计要求抽象为几何约束 (点约束、点和法矢约束、等参线约束等) , 在几何约束下对曲面进行变形。根据多曲面刚架模型节点和控制网格顶点的一一对应关系, 将曲面的约束变形问题转化为刚架模型变形。以刚架模型节点位移为变量, 构建了载荷最小与节点位移量最小的优化目标, 并建立统一的表达式, 用于组合使用两个最小化模型来满足不同的变形要求。多曲面约束变形问题可描述为以刚架节点位移Δ为变量的函数:

式中, ‖KΔ‖2为节点载荷;‖Δ‖2为节点位移量;α、β为权因子, 用于调整目标函数中每个优化目标在变形中所占的比重;ArΔ=br为第r个约束的约束方程;Ar为约束方程的系数矩阵;br为列阵;cn为约束的个数。

由于优化问题 (式 (3) ) 中的目标函数为Δ的二次函数, 约束方程为线性方程组, 因此上述约束优化问题为标准的等式二次规划问题, 可采用Lagrange乘子法和罚函数法进行求解。按照罚函数法将式 (3) 改写成

令并整理得

式中, I为单位矩阵。

由式 (4) 可以看出, 罚函数法将约束优化问题转化为线性方程组的求解问题。本文先采用超松弛迭代预处理共轭梯度法 (SSOR-PCG) 求解节点位移Δ, 然后根据节点和控制顶点的对应关系, 计算曲面片控制顶点的新位置, 完成多张曲面的约束变形。

由于总刚度矩阵K具有稀疏、对称等特性, 本文采用一维变带宽压缩存储方法存储矩阵, 并选取SSOR-PCG迭代求解方程组。将式 (4) 简记为FΔ=u, D为F的对角阵, L为F的严格下三角阵, 求解方程组伪代码如下:

其中, 0为零矩阵; (y0, Vy0) = (y0T) (Vy0) , 下同。

2.2 曲面片光滑拼接约束

为保证变形过程中曲面片之间的光滑拼接, 将曲面片之间的光滑拼接关系作为约束条件。在图3中, 曲面S1、S2为G1连续曲面, 即P1、P、P2位于一条直线上, 则0≤t≤1, 满足:

将式 (5) 改写为以节点位移Δ为参数的线性方程组:

式中, Ai'j' (0≤i'≤m', 0≤j'≤n') 为3×6维矩阵, m'+1、n'+1分别为合并后的整合控制网格U、V向控制顶点数目。

记与P1、P、P2对应的节点索引分别为i'j'、k'l'、r's' (0≤k'≤m';0≤r'≤m';0≤l'≤n';0≤s'≤n') , 则矩阵A除Ai'j'、Ak'l'、Ar's'外, 其余元素全为零矩阵。Ai'j'、Ak'l'、Ar's'分别为

2.3 点约束变形

假定S0是曲面片Pw (u, v) =Nw (u, v) Sw上参数为 (u0, v0) 的点, T0为变形后曲面片P'w (u, v) 上对应的目标点。则变形后的曲面片P'w (u, v) 满足:

式中, Nw (u0, v0) 为曲面片Pw (u, v) 基函数在参数点 (u0, v0) 的取值;Sw、ΔSw分别为曲面片的控制顶点矩阵和扰动矩阵;Δswij为曲面片Pw (u, v) 第ij个控制顶点的位移量。

式 (7) 可以改写为

将上述方程转化为以节点位移为变量的约束方程AΔ=b。其中, A的形式与式 (6) 中的系数矩阵一致, b=ΔP0=[ΔxΔyΔz]T。

初始各曲面片的每一个控制顶点对应唯一的节点, 元素Ai'j'取值主要有两种情况:

(1) 若控制顶点Swij和节点nodei'j'对应, 记Nwij=Nwi (u) Nwj (v) , 则元素Ai'j'可以表示为

(2) 若节点nodei'j'和任一控制顶点Swij未重合, 则Ai'j'=0。

在多点约束的情况下, 点约束可能会分布在不同的曲面片上。通过上述讨论分别计算将每个点约束转化为约束矩阵ArΔ=br。

图5所示为G1连续条件下4张B-spline曲面点约束变形结果。图5a所示为G1连续条件下4张B-spline曲面及点约束, 图5b、图5c所示分别为给定不同权因子的曲面变形结果。由图5b、图5c可以看出, 变形后的曲面片都满足给定的点约束条件, 但随着β的逐渐增大 (节点位移最小优化目标逐渐占较大比重) , 曲面将逐渐由整体光顺模型 (图5b) 向局部尖锐模型 (图5c) 过渡。因此, 调节权因子可以获得形状各异的变形结果, 为设计需求提供充足的素材。

2.4 点与法矢约束变形

假设变形后的曲面片P'w (u, v) 在参数点 (u0, v0) 处能精确通过点T0, 且曲面在 (u0, v0) 处的法矢n= (nx, ny, nz) , 即曲面片P'w (u, v) 满足:

式 (8) 可以根据点约束下多张B-spline曲面变形中约束系数矩阵的求法转换成AΔ=b的形式;式 (9) 、式 (10) 表达形式一致, 其解决方法也类似。以式 (9) 为例, 其约束方程式可以表示为

式中, Bi'j'为1×6维矩阵。

对约束矩阵元素Bi'j'同样需要进行分情况讨论:

(1) 若控制顶点Swij和节点nodei'j'对应, 则元素Bi'j'为

(2) 若节点nodei'j'和任一控制顶点Swij未重合, 则Bi'j'=0。

同理, 式 (10) 可以表示成CΔ=d的形式。

图6所示为G1连续条件下基于点和法矢约束的3张B-spline曲面变形。图6a所示为初始曲面及点与法矢约束, 图6b、图6c所示为不同权因子值下B-spline曲面的变形效果。

3 变形实例

基于刚架模型的多曲面变形方法已通过编程实现, 实例中梁单元材料的弹性模量E=1k Pa、泊松比μ=0.4, 通过交互添加几何约束使物体达到满足特定需求的变形结果。图7所示为自由曲面的点约束变形, 图7a中的自由曲面由3张B-spline曲面片通过G1拼接而成, 黑色的点为初始曲面片上的点, 黑色三角形为其相应的目标点, 最终的变形结果如图7b所示, 实现了曲面精确变形到点约束位置的要求。

和传统的曲面变形方法相比, 文中刚架模型的变形计算采用有限元的直接刚度法, 由于总刚度矩阵是正定的, 理论上一定可解。因此运用刚架变形原理进行复杂曲面的变形设计时, 避免了拼接约束系统的可解性问题, 本文方法可确保曲面片之间在变形过程中保持G1连续。表1所示为图5~图7曲面变形前后曲面片之间G1连续性条件分析数据, 平均正弦为公共边界点和两侧对应的控制顶点连线的矢量夹角正弦的平均值。由表1可以看出, 变形前后的平均正弦值基本保持一致, 即曲面片之间的光滑拼接状态在变形中得到了有效的保持。

运用本文算法计算多曲面变形时, 要求每张曲面为4边域B-spline曲面, 且两曲面片公共边界处及两侧对应的控制顶点在一条直线上。在约束变形计算中, 约束条件过多会导致刚架模型处于过约束状态, 进而无法生成满足指定约束的变形结果。图8所示为G1连续条件下基于点约束的2张B-spline曲面变形。其中, 图8a所示为初始曲面、曲面的刚架模型及点约束, 图8b所示为基于载荷最小模型的下B-spline曲面的变形结果。由图8b可以看出, 变形结果仅通过1个目标点。

4 结语

结合刚架模型受力变形原理, 提出了一种多张B-Spling曲面变形设计算法。给出了G1连续条件下多张B-spline曲面刚架模型的建立, 以及曲面片之间光滑拼接条件的处理方法。算法实现了多张B-spline曲面在几何约束下的变形协调设计, 而且还能使曲面片之间保持变形前的光滑拼接状态。

为增加变形算法的实用性可将本文方法扩展应用于NURBS表示的曲面变形设计;文中只提供了节点载荷最小和节点位移最小两个优化目标, 后续工作可以进一步组合更多不同意义的优化目标, 以便达到理想的曲面变形效果。

摘要:针对由多张B-spline曲面拼接构成的曲面形状修改问题, 提出了一种多张B-spline曲面变形算法。通过将曲面片控制顶点网格进行“合并”来建立多张B-spline曲面的刚架模型;以刚架节点位移为未知量, 建立节点载荷最小和节点位移最小的统一优化目标函数;将曲面片之间的光滑拼接条件抽象为节点相对位置约束, 结合点约束、点和法矢约束共同组成约束方程组;采用罚函数法求解得到变形后曲面新的控制顶点。变形实例表明该算法是直观有效的。

关键词:计算机辅助几何设计,B样条曲面,形状修改,几何约束

参考文献

[1]Piegl L.Modifying the Shape of Rational B-splines.Part 1:Surfaces[J].Computer-Aided Design, 1989, 21 (9) :538-546.

[2]李亚娟, 汪国昭.改变B样条曲面与NURBS曲面的节点[J].计算机辅助设计与图形学学报, 2005, 17 (5) :986-989.Li Yajun, Wang Guozhao.On Knot Modifications of Bspline or NURBS Surface[J].Journal of Computer-Aided Design&Computer Graphics, 2005, 17 (5) :986-989.

[3]Terzopoulos D, Platt J, Barr A.Elastically Deformable Models[J].Computer Graphics, 1987, 21 (4) :205-214.

[4]Wang Z G, Zhou L S, Wang X P.Direct Manipulation of B-spline Surfaces[J].Chinese Journal of Mechanical Engineering, 2005, 18 (1) :103-108.

[5]王青, 柯映林, 李江雄.基于力密度方法的NURBS曲线和曲面变形框架[J].机械工程学报, 2007, 43 (3) :135-142.Wang Qing, Ke Yinglin, Li Jiangxiong.Shape Modification of NURBS Curves and Surfaces Based on Force Density Method[J].Journal of Mechanical Engineering, 2007, 43 (3) :135-142.

[6]Celniker G, Gossard D.Deformable Curve and Surface Finite Elments for Free-form Shape Design[J].Computer Graphics, 1991, 25 (4) :257-266.

[7]Guan Z D, Jing L, Ning T, et al.Study and Application of Physics-based Deformable Curves and Surfaces[J].Computers&Graphics, 1997, 21 (3) :305-313.

[8]成思源, 张湘伟.可变形B样条曲线曲面模型及其有限元求解[J].重庆大学学报, 2003, 26 (2) :75-77.Cheng Siyuan, Zhang Xiangwei.Deformable B-spline Curves and Surfaces Model and Its Finite Element Solution[J].Chinese Journal of Chongqing University, 2003, 26 (2) :75-77.

[9]经玲, 席平, 唐荣锡.有限元方法在变形曲线曲面造型中的应用[J].计算机学报, 1998, 21 (3) :245-251.Jing Ling, Xi Ping, Tang Rrongxi.Application of Finite Element Method in Deformable Curve and Surface[J].Journal of Computers, 1998, 21 (3) :245-251.

[10]程仙国, 刘伟军, 卞宏友.基于外载荷的B样条曲面变形[J].机械工程学报, 2011, 47 (9) :146-150.Cheng Xianguo, Liu Wweijun, Bian Hongyou.Shape Modification of B-spline Surface via External Loads[J].Journal of Mechanical Engineering, 2011, 47 (9) :146-150.

[11]Wang Z G, Wang X P, Bao Y D, et al.Shape Modification by Beam Model in FEM[J].Chinese Journal of Aeronautics, 2010, 23 (2) :246-251.

自由曲面变形 篇7

逆向工程与传统的设计开发流程存在质的不同。传统产品设计的实现通常是从图纸上的概念设计到图样, 然后制造出产品, 这样的流程称之为正向工程或顺向工程, 而产品的逆向工程在狭义上是指在没有设计图纸或设计图纸不完整、没有CAD模型的情况下, 利用三维数字化测量仪测量样件物体表面的点云数据, 并传至CAD/CAM系统进行数据处理, 最后制作成所需要的CAD模型。广义上的逆向工程包括形状、工艺、结构和材料逆向, 是一个极其复杂的过程。

本文探讨的“逆向工程”主要集中在自由曲面领域, 即将产品样件转变为CAD模型等相关的数据化曲面数据, 最终应用于产品制造。自由曲面技术的应用领域广泛, 特别是在交通工具和消费电子等复杂产品的开发中。这是因为在产品开发和设计的过程中, 虽然数字化设计已广泛参与了各个流程, 但由于各种原因, 最初的样件并不是由CAD数据所描述, 设计和制造者面对的仅仅是实物样件。为了制造产品, 必须通过数字模拟手段将样件转换为CAD模型, 这对提高产品的人机工学水平、产品造型美学水平, 缩短CAE/CAM周期和提高产品市场的竞争力有重要意义。

2 自由曲面造型的原理和应用

2.1 自由曲面的参数化原理

自由曲面的参数化系统基于NURBS (Non-Uniform RationalB Spline) 系统, 中文翻译为非均匀有理B样条曲线系统。国际标准化组织 (ISO) 颁布的工业产品数据交换标准STEP中, 将NURBS作为定义工业产品几何形状的唯一数学方法。目前, Bezier、有理Bezier、均匀B样条和非均匀B样条都被统一到NURBS中, 从而使NURBS系统成为曲面造型技术发展趋势汇中最主要的基础。当下主流的自由曲面造型软件, 比如AutodeskAlias、ICEM和CATIA等都采用NURBS系统搭建内部架构。

2.2 基于 Alias 的逆向自由曲面造型

2.2.1 点云数据的处理

自由曲面的构建是逆向工程的核心内容, 而曲面构建的基础是通过测量设备测量样件所获得的点云数据。点云的三角化是逆向设计中很重要的步骤。扫描得到的点云往往很大, 有的点云有上百万甚至几百万个点, 如果不生成三角片进行简化, 则目前的计算机硬件设备很难对其操作。此外, 三角网格化并简化后, 可很方便地为后续构线搭建面做准备。如果局部网出现破洞, 则可以对网格进行修补。Alias逆向重构曲面时, 先将处理后的点云数据转化为三角网格 (Mesh) , 再对三角网格进行一系列的编辑处理, 最后进行逆向曲面重构。在Alias中具有多样性的建模工具, 在导入和配置来自三维扫描仪的点云数据后, 可对消费产品或汽车模型进行可视化和逆向工程操作。Alias的剪切、平滑、自动孔填充和网格缩减等工具可帮助用户简化和删除数据。该软件能处理包括数百万个多边形的大型数据, 确保用户能对形状和外形进行提取和评估。

2.2.2 自由曲面的拓扑分析

在正式建模前, 对产品的具体形态、斑马线和曲率着色进行分析, 确保以正确的拓扑分面开始建模。在自由曲面的规划中, 只有具有正确的拓扑分面, 才能得出符合设计思路的曲面。基于拓扑学的特性, 拓扑分面不具有唯一性, 只有合理的分面, 不存在唯一的分面。在Alias软件中, 具有强大的分析工具, 可帮助使用者对模型进行快速分析。这类工具能提供关于mesh和曲面的实时数据或图形反馈。

2.2.3 Alias 中特征线的提取和拟合

在Alias中提取特征线的主要方法是对mesh数据进行切断面线, 通常是从x, y, z方向分别指定间距进行投影截取。通过分析特征线可检测曲线、曲面与mesh数据的贴合程度。Alias软件中主要有2种拟合特征线的方法:1在空间中画自由曲线, 通过视图压缩和检测工具观察误差, 移动CV点以缩小偏差, 最终得到偏差范围内的自由曲线。这种方法耗时较长, 但更加合理。2使用Alias中的Fit Curve自动贴合mesh数据上的特征线。这种方法速度更快, 但曲线质量较低。

2.2.4 典型四边自由曲面的创建

基于NURBS系统的特性, 逆向自由曲面的创建将遵照四边面系统, 可通过提取Alias中的特征线, 并通过四边成面、轨道扫面、延长和拉伸曲面贴合mesh数据。比较特殊的方法有直接曲面建模法, 指在Alias中直接使用简单曲面, 通过增加调整CV点, 不断贴合mesh数据直至达到标准。此外, 必须考虑因点云数据本身的失真和扫描精度不足造成的误差, 数字师应与设计师不断沟通, 并对数据进行修改。

3 结束语

逆向工程中的自由曲面技术不仅仅是一个简单的贴面建模的过程, 而是基于新的产品设计思路和方法, 在测量技术、计算机硬件、软件技术提升的基础下产生的新的设计方法, 在消费电子、交通工具领域的应用非常广泛。在逆向过程中, 需要设计人员在结合工程输入的条件下对原始数据进行调整和创新, 这是一个在数据条件下的再设计过程。利用Alias软件中自由曲面的灵活性, 对复杂曲面进行拓扑分析, 巧妙地将设计与工程、艺术和科学链接起来, 这对整个设计、创意和生产一元化有着深远的意义。

摘要:逆向工程 (Reverse Engineering) , 也称反求工程, 是数字化设计中的重要设计手段之一。它不仅是简单地复制模型和零件的过程, 也需要设计人员进行数据化的再设计。因此, 在逆向工程的自由曲面造型中, 应在保证精确性和质量的同时, 也要保持一定的自由度和灵活性。

关键词:逆向工程,自由曲面,曲面拓扑,Alias

参考文献

上一篇:CT冠状面扫描下一篇:互联网通信基础