一种实时仿真碰撞的模拟方法及系统技术方案

技术编号:38406489 阅读:13 留言:0更新日期:2023-08-07 11:15
本发明专利技术提供了一种实时仿真碰撞的模拟方法及系统,方法包括:对模型数据进行解析,并创建多个结构分层;对各个所述结构分层下的模型数据进行遍历,并生成包围球;根据所述包围球和预设的包围盒进行相交测试,得到潜在的碰撞物体对列表;基于凸几何体的碰撞检测算法,根据所述潜在的碰撞物体对列表确定发生碰撞的物体对;基于4D动态模拟软件对所述发生碰撞的物体对进行图像渲染,以实现对碰撞的模拟。本发明专利技术通过对三维模型数据结构的分层,实现2级碰撞检测,有效降低了碰撞计算量。可广泛应用于大体量模型碰撞检测计算。于大体量模型碰撞检测计算。于大体量模型碰撞检测计算。

【技术实现步骤摘要】
一种实时仿真碰撞的模拟方法及系统


[0001]本专利技术涉及可视化模拟仿真
,特别是涉及一种实时仿真碰撞的模拟方法及系统。

技术介绍

[0002]一套科学合理的设计方案可以为建设项目带来相当可观的经济效益。BIM技术作为工程及设施全生命周期的载体,以三维模型为基础,将数字化技术和三维模型相结合,推动着施工企业全面向数字化、信息化技术方向发展,可视化模拟仿真作为BIM技术发展过程中的里程碑,不仅融合了各专业三维实体模型,还将模型与时间元素相关联,形成了新型建筑信息模型。现阶段我国一直在建筑设计与当代信息化相结合的发展背景上进行积极地探索。但市面上Navisworks等软件只能实现静态碰撞检测,无法实现实时的动态碰撞检测。Catia的Delmia等软件能实现动态检测,但不能实现大体量模型的运算,只能实现小规模模型的实时仿真碰撞模拟,模型体量超过一定范围就会出现死机的情况。
[0003]在碰撞检测算法研究初期,人们主要针对模型在静态环境中的碰撞问题开展研究。在静态环境下,模型之间的位置关系不会随着时间的改变而发生变化,只基于目标物项,遍历所有环境物项数据,并完成碰撞检测即可。但随着技术的发展和人们的业务需要,动态环境的碰撞检测需求逐渐增长,最先发展的是在游戏领域,采用的是一种离散的碰撞检测算法,将时间等比例分开,如一秒分成24帧,对每帧的碰撞情况进行计算,在视觉的宏观状态下可以完成连续的碰撞检测分析。这种方法计算简单,但在模型高速运动情况下,会出现单帧运动位移过大,出现“漏检问题”从而导致穿透现象。但这种方法实现速度快,仍广泛应用于动态仿真模拟场景的实现。
[0004]目前,现有碰撞检测技术大多实现小规模模型的碰撞检测,无法开展大体量模型的碰撞检测。当模型体量较大时,会增大计算量,无法满足每秒24帧的计算,使模拟过程中会出现漏帧现象。这种现象的产生会导致程序卡顿和“穿透”现象。因此,动态碰撞检测方法一直缺少大体量模型的稳定算法。

技术实现思路

[0005]为了克服现有技术的不足,本专利技术的目的是提供一种实时仿真碰撞的模拟方法及系统。
[0006]为实现上述目的,本专利技术提供了如下方案:
[0007]一种实时仿真碰撞的模拟方法,包括:
[0008]对模型数据进行解析,并创建多个结构分层;
[0009]对各个所述结构分层下的模型数据进行遍历,并生成包围球;
[0010]根据所述包围球和预设的包围盒进行相交测试,得到潜在的碰撞物体对列表;
[0011]基于凸几何体的碰撞检测算法,根据所述潜在的碰撞物体对列表确定发生碰撞的物体对;
[0012]基于4D动态模拟软件对所述发生碰撞的物体对进行图像渲染,以实现对碰撞的模拟。
[0013]优选地,还包括:
[0014]构建插件及扩展的管理机制;所述插件及扩展的管理机制用于提供给用户专用界面,以对所述模型数据进行管理,并为用户二次开发提供统一的接口管理功能和实现模式。
[0015]优选地,还包括:
[0016]构建统一扩展机制;所述统一扩展机制包括工厂方法模式和单例模式;所述统一扩展机制用于实现动态的创建对象,以实现可扩展性和全局访问。
[0017]优选地,所述碰撞检测算法包括Separating Axis Theorem算法、Gilbert

Johnson

Keerthi算法、Expanding PolytopeAlgorithm算法和Continuous Collision Detection算法。
[0018]一种实时仿真碰撞的模拟系统,包括:
[0019]数据解析单元,用于对模型数据进行解析,并创建多个结构分层;
[0020]遍历单元,用于对各个所述结构分层下的模型数据进行遍历,并生成包围球;
[0021]相交测试单元,用于根据所述包围球和预设的包围盒进行相交测试,得到潜在的碰撞物体对列表;
[0022]碰撞确定单元,用于基于凸几何体的碰撞检测算法,根据所述潜在的碰撞物体对列表确定发生碰撞的物体对;
[0023]模拟单元,用于基于4D动态模拟软件对所述发生碰撞的物体对进行图像渲染,以实现对碰撞的模拟。
[0024]优选地,还包括:
[0025]管理机制构建单元,用于构建插件及扩展的管理机制;所述插件及扩展的管理机制用于提供给用户专用界面,以对所述模型数据进行管理,并为用户二次开发提供统一的接口管理功能和实现模式。
[0026]优选地,还包括:
[0027]扩展机制构建单元,用于构建统一扩展机制;所述统一扩展机制包括工厂方法模式和单例模式;所述统一扩展机制用于实现动态的创建对象,以实现可扩展性和全局访问。
[0028]根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:
[0029]本专利技术提供了一种实时仿真碰撞的模拟方法及系统,方法包括:对模型数据进行解析,并创建多个结构分层;对各个所述结构分层下的模型数据进行遍历,并生成包围球;根据所述包围球和预设的包围盒进行相交测试,得到潜在的碰撞物体对列表;基于凸几何体的碰撞检测算法,根据所述潜在的碰撞物体对列表确定发生碰撞的物体对;基于4D动态模拟软件对所述发生碰撞的物体对进行图像渲染,以实现对碰撞的模拟。本专利技术通过对三维模型数据结构的分层,实现2级碰撞检测,有效降低了碰撞计算量。可广泛应用于大体量模型碰撞检测计算。
附图说明
[0030]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施
例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0031]图1为本专利技术实施例提供的方法流程图;
[0032]图2为本专利技术实施例提供的统一扩展机制流程图。
具体实施方式
[0033]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0034]本专利技术的目的是提供一种实时仿真碰撞的模拟方法及系统,通过对三维模型数据结构的分层,实现2级碰撞检测,有效降低了碰撞计算量。可广泛应用于大体量模型碰撞检测计算。
[0035]为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。
[0036]图1为本专利技术实施例提供的方法流程图,如图1所示,本专利技术提供了一种实时仿真碰撞的模拟方法,包括:
[0037]步骤100:对模型数据进行解析,并创建多个结构分层;
[0038]步骤200:对各个所述结构分层下的模型数据进行遍历,并生成包围球;
[003本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实时仿真碰撞的模拟方法,其特征在于,包括:对模型数据进行解析,并创建多个结构分层;对各个所述结构分层下的模型数据进行遍历,并生成包围球;根据所述包围球和预设的包围盒进行相交测试,得到潜在的碰撞物体对列表;基于凸几何体的碰撞检测算法,根据所述潜在的碰撞物体对列表确定发生碰撞的物体对;基于4D动态模拟软件对所述发生碰撞的物体对进行图像渲染,以实现对碰撞的模拟。2.根据权利要求1所述的实时仿真碰撞的模拟方法,其特征在于,还包括:构建插件及扩展的管理机制;所述插件及扩展的管理机制用于提供给用户专用界面,以对所述模型数据进行管理,并为用户二次开发提供统一的接口管理功能和实现模式。3.根据权利要求1所述的实时仿真碰撞的模拟方法,其特征在于,还包括:构建统一扩展机制;所述统一扩展机制包括工厂方法模式和单例模式;所述统一扩展机制用于实现动态的创建对象,以实现可扩展性和全局访问。4.根据权利要求1所述的实时仿真碰撞的模拟方法,其特征在于,所述碰撞检测算法包括SeparatingAxisTheorem算法、Gilbert

Johnson

Keerthi算法、Expand...

【专利技术属性】
技术研发人员:常海军刘海洋朱宇波刘超申梦岭杨远松韩国姣席利国周波波刘文浩
申请(专利权)人:核工业工程研究设计有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1