基于嵌入空间变形的物体变形方法研究(1)
2015-10-31 01:04
导读:计算机应用论文论文,基于嵌入空间变形的物体变形方法研究(1)在线阅读,教你怎么写,格式什么样,科教论文网提供各种参考范例:
摘 要 FFD(Free-Form Deformation)自由变形方法是空间变形最有效的方法
摘 要 FFD(Free-Form Deformation)自由变形方法是空间变形最有效的方法之一,FFD方法不对物体直接进行变形,而是对物体所嵌入的空间进行变形。本文讨论分析了基于FFD自由变形方法。 关键词 空间变形;自由变形;嵌入;控制顶点;权因子
1 自由变形方法FFD 自由变形FFD(Free-Form Deformation)方法是常用的一种与物体表示无关的变形方法。FFD算法的实施可以比喻为雕塑家的手,每实施一次,就相当于用手把整个物体雕塑一遍,随着FFD算法的逐次实施,最终把物体雕塑成所希望的形状。FFD算法的前提是:假定物体有很好的弹性,容易在外力的作用下发生变形。应用该法进行造型时,须先设计一个长方体框架,将物体嵌入框架中。当框架受外力变形时,物体的形状也发生改变。框架的形变是由其上的控制顶点的变化而产生的,因此可通过框架上的控制顶点来改变可控制物体的形状,一般称该框架为控制框架。1.1 FFD
数学原理 在数学中变形可以看作一个由R3到R3的映射X=F(x),其定义域是待变形的物体表面所包围的实体,其值域是变形后的物体。所以关键问题是如何构造此映射,使模型的构造具有较好的直观性、交互性和透明性。 Sederberg和Parry使用了三变量张量积Bernstein多项式和一个控制框架来构造映射F(x),其算法如下: (1)首先,在一个包围待变形物体的长方体中构造局部坐标系O‘- STU,如图1所示。

图 1 构造局部坐标系和控制框架 其中X0(O′) 是局部坐标系的原点,S,T,U是轴矢量。笛卡尔坐标系O-XYZ中任意一点X在局部坐标系中具有坐标(
s,t,u)X=X0
sS
tT
uU 式中X0为局部坐标系的原点:


(1.1) 显然,对控制框架内的任意点,其局部坐标满足:0≦
s, t,u≦1。 (2)在长方体上构造控制顶点网格P
i,j,k,分别沿S,T和U三个方向用平行于
O′TU ,
O′SU,O′ST坐标面的等距截面将O′S,O′T和O′U等分为
l,
m和
n个区间,则P
i,j,k可表示为

(1.2) 其中
i=0,1,…,l;
j=0,1,…,m;
k=0,1,…,n 框架内任意一点的笛卡尔坐标X可表示为

(1.3) 式中
Bil(
s),
Bjm(
t)和
Bnk(
u)分别为
l,
m,
n次Bernstein多项式基函数。 (3)建立了物体与框架的相互关系之后,用户可通过改变P
i,j,k的位置得到新的控制顶点
P′i,j,k和变形后的控制框架。若原控制框架内任一点X所对应的局部坐标为(
s,
t,
u),则该点在框架变形后所对应的笛卡儿坐标X
ffd可由变形规则(1.4)确定:

(1.4) 式(1.4)表明:由新的控制顶点计算变形后的物体时,应首先确定原控制框架内任一点X所对应的局部坐标(
s,
t,
u)。一般的说,此过程应根据原控制顶点和式(1.3)求解非线性方程组。在用Bernstein多项式来表示变形映射时,若原控制顶点满足式(1.2),则其局部坐标可用式(1.1)确定。控制顶点P
i,j,k实际上就是Bernstein多项式的系数,与Bezier曲线、曲面一样,变形与控制顶点存在非常密切的关系。由于Bernstein多项式的性质,移动一个控制顶点将影响框架内的整个空间。因此,变形区域为框架内所有的点。实际上,变形只施加于框架内待变形物体上的点,即需要计算的仅是框架内变形物体上的点。 当整个物体都位于框架内时,因为移动一个控制顶点将影响整个物体的形状,为使变形局部化,所以可采用较小的框架。当物体的一部分位于框架内时,将获得局部变形。此时框架与物体相交,为保持切矢或曲率连续,需对框架控制顶点的位置提出更严格的要求。 物体的变形是由框架控制顶点的移动产生的,要求精确移动物体上一个给定的点将非常困难,故必须经过反复实验才能获得所期望的效果。 应用传统FFD方法对物体进行自由变形时,控制变形的工具是一个参数三变元张量积的Bezier体、B-样条体或NURBS体。被变形物体首先以某种方式嵌入这个体的参数空间,常用的嵌入方式有两种: (1)待变形物体上任意一点的坐标(