一种基于曲面建立的简单形变建模方法与流程

文档序号:13878239阅读:622来源:国知局
一种基于曲面建立的简单形变建模方法与流程

本发明属于计算机图形学建模技术领域,更为具体地讲,涉及一种基于曲面建立的简单形变建模方法。



背景技术:

在过去的几十年,由于计算机技术的快速发展以及人们对三维模型的应用越来越广泛,比如:建筑、医疗、科技等等方面,伴随而来的是对模型精度的要求,因此模型的建立已经越来越精细,但细致的模型并不代表模型表现的真实,只有模型能对外界环境的刺激产生合适的形变才能让模型真正显得逼真,因此,形变建模领域一直是三维建模研究中的重要成分,而随着技术的发展,增强现实的出现,vr娱乐的诞生,虚拟手术的需要等等更先进的技术刺激着人们对三维建模的研究,尤其是形变建模。在目前计算机图形领域,根据不同的物理模型,常把形变模型划分为质点弹簧模型(massspringmodel,msm)、变形样条及体积模型。其中,体积模型又包括有限元模型(finiteelementmethods,fem)和边界元模型(boundaryelementmethods,bem)。而对于形变建模,质点弹簧模型和有限元模型最为常用。前者将物体分解成一系列带有一定质量的节点,节点间通过弹簧相互连接,形变过程中节点间的运动及力的传导通过弹簧实现。而后者基于连续介质力学,将物体按照形状等特性分解为有限个单元,如杆单元、三角形单元、四面体单元、六面体单元等,单元间同样通过节点相连,实现节点运动与力的传导。msm原理相对简单,但由于msm在分解物体质量的同时也分解了运动公式,因此也有一定的计算量。而fem不同的单元具有不同的刚度矩阵,针对特定单元,根据单元上各节点的位移,可基于该单元的刚度矩阵获得单元上任意位置的应力和应变,因此有fem的建模精度更为精确,但分析过程中大量的矩阵分析使得其计算量相当大,实时性能比较差。综上所述,现有的形变建模关注点在于模型的仿真程度,往往牺牲了运行效率,以庞大的计算量换取模型的形变效果,但在实际运用当中,人们大多数时候对模型的仿真程度并没有要么高的要求,这时候运行速度显得更加重要,因此原理简单,运行效率高的形变建模往往更有实用价值。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于曲面建立的简单形变建模方法,利用简单的局部插值运算来构建形变曲面,以替代现有的形变建模方法中的复杂计算,具有运算速度快,实时性好等特点。

为实现上述发明目的,本发明为一种基于曲面建立的简单形变建模方法,其特征在于,包括以下步骤;

(1)、确定形变数据数组

在曲面生成过程中,会生成由三角面片顶点构成的顶点数组,现将该顶点数组中需要添加形变的区域表面坐标数据作为形变数据数组;

(2)、确定模型初始受力点

当模型发生碰撞时,通过碰撞检测算法获取碰撞物体与模型表面接触点坐标,然后在形变数据数组中寻找到距该接触点距离最近的点作为模型初始受力点;

(3)、确定模型最终受力位置点,以及最大形变边界点及形变控制点

(3.1)、确定模型最终受力位置点

碰撞物体与模型发生碰撞后会继续移动,当碰撞物体停止移动后与模型表面的接触点标记为模型最终受力位置点;

(3.2)、将步骤(2)中确定的模型初始受力点移动到最终受力位置,得到模型最终受力点;

(3.3)、选取最大形变边界点

根据实际形变的需要影响范围,选取模型最终受力点不同方向上且属于形变数据数组中的多个点,标记为最大形变边界点;

(3.4)、计算形变控制点

将选出的最大形变边界点分别与模型最终受力点做插值运算,得到多个点,标记为形变控制点;

(4)、利用模型最终受力点,最大形变边界点,以及形变控制点构建一个形变控制数组,然后利用该数组构建一形变曲面,再用构建的形变曲面替代原始原曲面,得到模型受力后的实际效果。

本发明的发明目的是这样实现的:

本发明一种基于曲面建立的简单形变建模方法,利用模型受力点,最大形变边界点,以及形变控制点构建形变曲面,再用构建的形变曲面替代原始原曲面,从而得到模型受力后的实际效果;具有原理易懂,结构简单,计算量小,且有效的降低资源的浪费,同时还具有计算快速性和实时性,并且能够很好的控制形变程度与形变范围。

附图说明

图1是本发明一种基于曲面建立的简单形变建模方法流程图;

图2是形变曲面模型宏观解释图;

图3是贝塞尔曲面控制点数组示意图;

图4是贝赛尔曲面控制点的编号示意图。

具体实施方式

下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。

实施例

图1是本发明一种基于曲面建立的简单形变建模方法流程图。

在本实施例中,如图1所示,本发明一种基于曲面建立的简单形变建模方法,包括以下步骤;

s1、确定形变数据数组

在曲面生成过程中,会生成由三角面片顶点构成的顶点数组,在本实施例中,选取的模型表面为5*5点阵,共25个三角网格顶点,如图2所示,将该顶点数组看做形变数据数组。

当获取已知模型表面生成过程中各个面产生的三角网格顶点数组,按其位置顺序可对其进行一定程度的规则抽样,此举可降低受力计算量,提高效率,但可能会降低仿真程度,所以具体实施时可根据需要进行选择。

s2、确定模型初始受力点

当模型发生碰撞时,通过碰撞检测算法获取碰撞物体与模型表面接触点坐标,然后在形变数据数组中寻找到距该接触点距离最近的点作为模型初始受力点;在本实施例中,如图2所示,图中的三角形点为模型初始受力点,位于表面中心点处。

s3、确定模型最终受力位置,以及最大形变边界点及形变控制点

s3.1、确定模型最终受力位置点

碰撞物体与模型发生碰撞后会继续移动,当碰撞物体停止移动后与模型表面的接触点标记为模型最终受力位置;

s3.2、将步骤s2中确定的模型初始受力点移动到最终受力位置,得到模型最终受力点,如图4所示,图中的点13即为模型最终受力点;

s3.3、选取最大形变边界点

根据实际形变的需要影响范围,选取模型最终受力点不同方向上且属于形变数据数组中的多个点,标记为最大形变边界点,其具体位置由形变影响范围及期望形变方向决定,本实施例选取了模型最终受力点上下左右四个方向的四个点作为最大形变边界点,如图2所示,四个圆形点为最大形变边界点;

s3.4、计算形变控制点

将选出的最大形变边界点分别与模型最终受力点做插值运算,得到多个点,标记为形变控制点;本实施例中将选出的四个方向上的最大形变边界点分别与模型最终受力点做插值运算,得到四个点作为形变控制点;在本实施例中,形变控制点坐标为模型最终受力点坐标分别与四个最大形变边界点坐标取平均,得到四个形变控制点,如图2所示,四个菱形点为形变控制点。

s4、利用上述步骤,获取了一个模型最终受力点、四个最大形变边界点、四个形变控制点,这九个点构成初始的形变控制数组,利用该控制数组可以构建一形变曲面,其中,最大形变边界点控制实际形变范围,模型最终受力点保证形变准确性,形变控制点控制形变大小;最后,再用构建的形变曲面替代原始原曲面,得到模型受力后的实际效果。

在本实施例中,选取构建贝塞尔曲面,建立步骤如下:

根据已知的九个点构成的初始形变控制数组,通过简单插值计算可获得5*5点阵坐标,点阵位置及编号如图3、图4所示,将此新矩阵作为新建贝塞尔曲面的控制矩阵,据此得到贝赛尔曲面,由于贝赛尔曲面的建立是利用实际坐标,故建立贝赛尔曲面后会直接绘制,得到形变仿真,但也可通过形变曲面和原表面进行运算处理得到其他效果,本实施例不在此赘述。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1