基于包围盒的碰撞检测算法分析-analysis of collision detection algorithm based on bounding box.docxVIP

  • 16
  • 0
  • 约5.39万字
  • 约 66页
  • 2018-05-18 发布于上海
  • 举报

基于包围盒的碰撞检测算法分析-analysis of collision detection algorithm based on bounding box.docx

基于包围盒的碰撞检测算法分析-analysis of collision detection algorithm based on bounding box

缩略语词汇表缩略语词汇表AABBAxis-AlignedBoundingBox轴向包围盒OBBOrientedBoundingBox方向包围盒k-DOPsk-DiscreteOrientationPolytopesk阶离散方向包围盒BVboundingvolume包围盒BSPBinarySpacePartitioning二叉空间划分HBVHierarchicalBoundingVolume层次包围盒FDHFixedDirectionHull固定方向凸包SATSeparatingAxisTheorem分离轴定理OpenGLOpenGraphicLibrary开放式图形库63第1 章绪论第1章绪论1.1课题背景和研究意义碰撞检测(CollisionDetection,CD)基于空间中不同物体同一时刻不能占有共同区域这一基本事实提出,是计算机动画(ComputerAnimation,CA)、计算机游戏、计算机辅助设计(ComputerAidedDesign,CAD)、机器人技术、计算机辅助制造(ComputerAidedManufacturing,CAM)等领域的一项关键技术[1-4],它隶属于计算机图形学(ComputerGraphics,CG)的范畴,主要研究物体几何属性(边、面、体)之间相交关系。从20世纪70年代开始一直是一项热门研究课题[5-7]。对虚拟的三维空间中的物体进行碰撞处理的过程,一般划分为碰撞检测、碰撞确定(CollisionDetermination)以及碰撞反应(CollisionResponse)三个阶段[8]。这三个阶段各有分工:碰撞检测的任务是要判断出两个或多个物体之间是否发生碰撞;碰撞确定的任务是要求出物体之间相交的准确位置;碰撞反应的任务则是根据通过上面两个子阶段得到的物体之间的碰撞发生情况,决定对发生碰撞的对象应该采取的操作。提高碰撞检测的精确性、实时性是加强虚拟现实应用中的真实感、沉浸感的重要手段[9]。在虚拟漫游系统中,虽然对碰撞检测的要求不高,但要求能及时检测出虚拟对象与环境中的物体之间发生的碰撞并做出碰撞响应,没有添加碰撞检测的虚拟漫游系统是不真实的[10]。例如:人碰到建筑物时,不是避开,而是直接可以从中穿过;导弹与飞机发生碰撞,不是发生爆炸,而是两者都平安无事,这些都与实际情况不符,而添加适当的碰撞处理过程就可以解决这些问题。工厂在进行某些新的工程、项目之前,或者要进行新产品的研发时,经常需要借助于计算机进行虚拟设计和虚拟制造,这些应用要求碰撞检测具有较高的精度,但对实时性要求不强。机械零件之间的配合情况、运行磨损、应力分析等都需要精确的碰撞检测[11]。随着计算机图形学技术的发展以及计算机性能的提高,虚拟手术成为一种新兴医疗手段[12]。由于现实中手术的风险性、不可重复性(对有些手术,对于同一病患不可能反复进行操作、实验等),这就需要在术前确定最优的手术方案,虚拟手术的出现既可以提供直接的、可视化的手术场景,方便医师进行手术方案的设计,提高真实手术的成功率,又能够帮助初学者学习和熟练掌握某些手术的关键(手术教学)。虚拟手术中需要进行大量实时的软体碰撞检测,这对碰撞检测的1河南科技大学硕士学位论文精度和实时性要求都很高,计算起来也相当复杂。综上所述,碰撞检测在许多领域都是一项非常重要和关键的技术,寻找速度快,精度好,鲁棒性强的碰撞检测方法是很有必要和研究价值的。1.2国内外研究现状目前,已经出现了许多不同类型的碰撞检测方法,还有许多优秀的碰撞检测算法不断涌现,并且对碰撞检测种类的划分也没有一个统一的标准,为了便于介绍,这里首先对碰撞检测的类型进行大致的划分,在划分的同时,介绍国内外的研究现状:按照具体应用中物体几何属性的不同,可以把碰撞检测分为刚体碰撞检测和可变形体碰撞检测两个大类。刚体的碰撞检测方法已相对成熟,出现了许多经典算法[2-6],可变形体碰撞检测则是一个新兴的研究方向[13,14]。按照对检测实时性要求的不同,又可以把碰撞检测划分为静态的干涉检测和动态的实时检测。静态的碰撞检测算法主要问题是几何关系问题,对实时性要求不高,目前有许多成熟的算法[15,16];动态碰测算法对检测实时性要求较高,相对而言有更广泛的应用,针对该算法的研究也非常多[17]。根据所假设的物体运动过程是否连续,又可以把动态的碰撞检测分为离散型和连续型两种碰撞检测。离散型碰撞检测算法主要是在每一时间离散点(采样点) 上通过类似于静态干涉检测算法的方法来实现。这类算法自身存在一些问题的,由于研究的是离散的时间点,所以检测当中会发生刺穿和遗漏现象等,也就是在采样点之间可能碰撞检测已经发生,但是未能得到及时的检测,而造成产生不应当的位置关系,或者说本来应该检测为碰撞的结果,由于物体速度的运动过快,造成了物体之

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档