[发明专利]一种面向虚拟装配的基于AABB-OBB混合包围盒的碰撞检测方法无效
| 申请号: | 201110322775.7 | 申请日: | 2011-10-21 |
| 公开(公告)号: | CN102368280A | 公开(公告)日: | 2012-03-07 |
| 发明(设计)人: | 周天;齐越 | 申请(专利权)人: | 北京航空航天大学 |
| 主分类号: | G06F17/50 | 分类号: | G06F17/50 |
| 代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 卢纪;李新华 |
| 地址: | 100191*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 面向 虚拟 装配 基于 aabb obb 混合 包围 碰撞 检测 方法 | ||
技术领域
本发明属于计算机虚拟现实领域,具体地说,是一种面向虚拟装配的基于AABB-OBB混合包围盒的碰撞检测方法。
背景技术
在面向航空发动机的虚拟拆装场景中,很多零部件的接触面结构复杂,三角面片高达数万级别。例如在用拧球形螺母扳手拧下球形螺母的步骤中,两个碰撞模型对的总三角面片高达5.7万。传统的AABB包围盒碰撞检测方法构建更新快速,对计算资源要求少,但是包围盒不能紧致的包围模型体,不该碰撞的检测出碰撞,检测精度不高;而OBB包围盒碰撞检测方法对模型包围的紧致性很好,碰撞检测精度较高,但是OBB包围盒构建复杂,更新较慢,比较耗时,对计算资源的要求高。本发明面向航空发动机的虚拟拆装场景,将两种传统的碰撞检测方法相结合,使得碰撞检测满足时间效率和碰撞精度的双重需求。
发明内容
本发明源于在面向航空发动机的虚拟拆装场景里,碰撞模型对的三角面片数据量大,碰撞精度和碰撞效率需要综合考虑,将传统的AABB包围盒碰撞检测方法和OBB包围盒碰撞检测方法相结合。
为达到上述目的,本发明提出一种面向虚拟装配的基于AABB-OBB混合包围盒的碰撞检测方法,具体的方法步骤如下:
1)载入三维模型;
2)预处理阶段,对模型进行剖分,逐层建立OBB层次二叉树,建立整体模型的AABB包围盒;
3)实时处理阶段,利用AABB包围盒碰撞检测方法进行粗略的碰撞检测;
4)实时处理阶段,利用OBB包围盒碰撞检测方法进行精确的碰撞检测;
5)通过判断面片是否相交来进行最终的碰撞检测;
上述方法中,步骤1)中,载入工作需要从模型文件中提取顶点的位置坐标,顶点法线坐标,三角面片中点的索引信息。
上述方法中,步骤2)中,对模型基本元素进行剖分,组织为层次二叉树,对层次二叉树中的节点逐层建立OBB包围盒,建立整体模型的AABB包围盒。
上述方法中,步骤3)中,通过AABB包围盒粗略碰撞检测确定碰撞检测发生。
上述方法中,步骤4)中,遍历碰撞模型对的层次二叉树,进行OBB包围盒碰撞检测。
上述方法中,步骤5)中,对重叠的叶子节点进行三角形相交测试,返回碰撞检测结果。
本发明的优点在于:在虚拟拆装系统中,对于复杂的碰撞模型对,可以满足实时性和精确性的综合要求。
附图说明
图1示出本发明的碰撞检测过程示意;
图2示出碰撞检测算法基本框图;
图3示出碰撞检测试验流程;
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细说明。
本发明的主要示意如图1所示,算法执行框架如图2所示,实验流程如图3所示,具体步骤如下:
(1)载入模型,通常载入OBJ格式的模型,根据文件行标记v、vn、f分别提取出模型的顶点信息,顶点法线信息,三角面片信息等等。
(2)根据提取出的模型信息,在前期预处理阶段,对模型进行分割,划分OBB层次二叉树。建立模型整体的AABB包围盒。通过对网格模型不断的进行划分,将整个模型组织为一棵层次包围体树。基于对实时性的要求,将这一过程放在离线阶段进行,而实时运行阶段只需做层次包围体树的遍历以及叶子节点包围盒的求交计算。
(3)利用AABB包围盒碰撞检测算法,实时更新AABB包围盒,进行模型的粗略碰撞检测。AABB层次包围盒树采用自顶向下通过递归的方式建立。首先建立整个物体AABB作为根包围盒,然后将根包围盒中每个三角形面上的点。在根包围盒长轴上的投影值与所有三角形面上的点的平均值在长轴上的投影值进行比较,将根包围盒分为两个子包围盒,成为根节点的子节点,以此进行直到子节点中的三角形数目小于规定的数目或者树的深度达到规定的深度为止,到此AABB层次树建立完毕。在递归建树中,选择当前AABB长轴作为投影轴,这样可以使分得的两个子包围盒重叠部分最少,从而减少碰撞检测次数。
(4)利用OBB轴向层次包围盒碰撞检测算法,实时更新OBB包围盒,进行对树形结构每一层节点的精确碰撞检测。OBB包围盒被定义为包含该对象且相对于坐标轴方向任意的最小的长方体。它是一个表面法线两两垂直的长方体。也就是说它是一个可以任意旋转的AABB。由于OBB方向上的任意性,很显然比AABB和包围球更加紧密的逼近物体,能比较明显地减少包围体的个数,从而避免了大量包围体之间的相交检测。但OBB之间的相交检测比AABB和包围球体之间的相交检测更加费时。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110322775.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:制冷循环装置
- 下一篇:阻燃型聚丙烯复合材料及其制备方法





