一种驾驶模拟器获得交通环境信息的快速截取引擎的制作方法_3

文档序号:8512483阅读:来源:国知局
姿态等成员变量,类实例通过成员函数执行仿真对象定位算法,确定其所处的仿真空间网格,并将自身句柄写入到所处网格的空间网格类CCell Class实例的链表中。
[0038]步骤5、驾驶模拟器图像子系统通过截取服务的更新功能为引擎中的截取模型类CCullingModel Class实例更新驾驶员所在的截取位置等成员变量,类实例通过成员函数执行仿真范围截取算法确定截取范围所覆盖的网格,并提取出网格所包含的交通仿真对象信息,然后通过定位服务的反馈功能反馈给驾驶模拟器的图像子系统,由图像子系统实现对这些交通车辆在驾驶模拟器场景中的显示。驾驶模拟器声响子系统截取交通仿真车辆并对其声响效果进行播放的过程与之类似。
[0039]步骤6、在驾驶模拟器与交通仿真器进行联合仿真的过程中由截取引擎类CCullingEngine Class控制,分别并发循环执行上述第4、5步。
[0040]步骤7、在结束仿真时,驾驶模拟器的图像、声响系统通过截取服务的注销功能从引擎中退出;交通仿真器的被截取仿真对象通过定位服务的注销功能从引擎中退出;在全部截取模型类CCullingModel Class实例和被截取对象类CObjectToCull Class实例成功析构后,将空间网格类CCell Class实例数组中的实例析构,退出截取引擎。
【主权项】
1.一种驾驶模拟器获得交通环境信息的快速截取引擎,其特征在于,定位服务模块(2)与被截取仿真对象数据存储空间(7)连接,被截取仿真对象数据存储空间(7)分别与仿真对象定位算法模块(4)、仿真范围截取算法模块(6)连接,仿真对象定位算法模块(4)与仿真场景空间划分模块(5)连接,仿真场景空间划分模块(5)与仿真范围截取算法模块(6)连接,仿真范围截取算法模块(6)与截取服务模块(3)连接,截取服务模块(3)与模拟器子系统数据存储空间(8)连接,模拟器子系统数据存储空间(8)与仿真范围截取算法模块(6)连接,被截取仿真对象(9)与定位服务模块(2)连接,驾驶模拟器各子系统(10)与截取服务模块(3)连接。
2.根据权利要求1所述的一种驾驶模拟器获得交通环境信息的快速截取引擎,其特征在于,定位服务模块(2),负责为交通仿真器向快速截取引擎(I)传递数据提供服务,交通仿真器中的每一个被截取仿真对象(9)在快速截取引擎中都对应有一段被截取仿真对象数据存储空间(7),保存了仿真对象定位算法模块(4)和驾驶模拟器所需要的被截取仿真对象(9)的数据;定位服务模块(2)为交通仿真对象提供了注册、注销、更新三个功能,其中注册功能在被截取仿真对象(9)希望加入驾驶模拟器场景时在引擎中为其创建相应的被截取仿真对象数据存储空间(7)、同时创建访问该存储空间的句柄并初始化数据;注销功能在被截取仿真对象(9)希望退出驾驶模拟器场景时在引擎中销毁所创建的被截取仿真对象数据存储空间和句柄;更新功能负责将每次交通仿真对象的计算结果写入引擎中对应的数据存储空间。
3.根据权利要求1所述的一种驾驶模拟器获得交通环境信息的快速截取引擎,其特征在于,截取服务模块(3),负责为驾驶模拟器与快速截取引擎(I)之间传递数据提供服务,驾驶模拟器中每一个需要应用截取功能的子系统在快速截取引擎(I)中都对应有一段模拟器子系统数据存储空间(8),保存了仿真范围截取算法模块(6)所需要的数据,截取服务模块(3)为驾驶模拟器的子系统提供了注册、注销、更新、反馈四个功能,其中注册功能在驾驶模拟器各子系统(10)希望利用引擎的截取功能时在引擎中为其创建相应的模拟器子系统数据存储空间(8)、同时创建访问该存储空间的句柄并初始化数据;注销功能在驾驶模拟器各子系统(10)不再需要利用引擎的截取功能时在引擎中销毁所创建辟的模拟器子系统数据存储空间(8)和句柄;更新功能负责将驾驶模拟器各子系统(10)每次截取计算时需要更新的数据写入引擎中的数据存储空间;反馈功能负责将仿真范围截取算法模块(6)的计算结果反馈给驾驶模拟器的子系统。
4.根据权利要求1所述的一种驾驶模拟器获得交通环境信息的快速截取引擎,其特征在于,仿真场景空间划分模块(5),负责根据仿真场景在惯性坐标系下X,y方向的最大尺寸,将仿真场景划分为一组分别沿X、y方向的连续二维正方形网格,并为每一个划分后的网格创建、维护若干个链表,每个链表中记录了处于该网格内的相同类型的关于被截取仿真对象(9)的句柄,该句柄在被截取仿真对象(9)向引擎注册时由定位服务模块(2)创建,并指向了 一段被截取仿真对象数据存储空间(7),通过该句柄可以获得该被截取仿真对象(9)为驾驶模拟器提供的仿真数据;为每一个网格维护链表的过程包括,将处于当前网格的被截取仿真对象(9)句柄写入链表,将不再处于当前网格的被截取仿真对象(9)从链表中删除,输出链表中的被截取仿真对象(9)句柄,在仿真过程中对链表的读、写保护机制;读、写保护机制是指保证满足以下要求的一系列过程:每一个链表在同一时刻只能有一个被截取仿真对象(9)句柄被写入或删除,并且此时不能进行读链表操作;每一个链表在同一时刻可以有多个访问者从中读取被截取仿真对象(9)句柄;交通仿真对象是交通仿真器中的交通仿真车辆、行人、动态信息指示牌动态对象,或是路障、交通标志牌静态对象。
5.根据权利要求1所述的一种驾驶模拟器获得交通环境信息的快速截取引擎,其特征在于,仿真对象定位算法模块(4),负责为被截取仿真对象(9)提供一种定位算法,该算法能够根据仿真场景空间划分模块(5)所划分的网格,以及被截取仿真对象(9)的轮廓、位置、姿态确定仿真对象当前所处的网格,该算法执行过程中所需要的被截取仿真对象(9)数据由定位服务模块(2)为该对象所创建的被截取仿真对象数据存储空间(7)中获得;仿真对象当前所处的网格是指,利用表示仿真对象二维轮廓的矩形与仿真场景中的正方形网格进行计算机图形学意义上的相交检测计算,所有与上述矩形发生相交的正方形网格,都认为是仿真对象当前所处的网格,因此仿真对象当前所处的网格数是I至4个。
6.根据权利要求1所述的一种驾驶模拟器获得交通环境信息的快速截取引擎,其特征在于,仿真范围截取算法模块¢),负责根据仿真场景空间划分模块(5)所划分的网格,以及调用该模块的驾驶模拟器各子系统(10)当前设定的位置、截取范围,计算出该截取范围所覆盖的正方形网格,然后从被覆盖的正方形网格所创建的链表中提取被截取仿真对象(9)的句柄,该算法执行过程中所需要的驾驶模拟器各子系统(10)数据由截取服务模块(3)为驾驶模拟器子系统所开辟的模拟器子系统数据存储空间(8)中获得;该仿真范围截取算法模块(6)可以通过正方形网格所创建的链表中存储的被截取仿真对象(9)的句柄,访问被截取仿真对象(9)所对应的被截取仿真对象数据存储空间(7),从而获得被截取仿真对象(9)的仿真参数、仿真结果信息;调用仿真范围截取算法模块(6)的驾驶模拟器各子系统(10)可以是图像显示系统、声响模拟系统,通过被覆盖的网格所创建的链表获得截取范围以内交通仿真车辆的显示状态、声响状态,并通过驾驶模拟器的成像设备、声响设备、运动模拟设备呈现给驾驶员;同时,调用仿真范围截取算法模块¢)的也可以是自行开发的交通仿真器中需要进行一定区域内交通车辆信息统计的其他对象;截取范围所覆盖的正方形网格,是指利用表示截取范围的简单几何图形与仿真场景中的正方形网格进行计算机图形学意义上的相交检测计算,与上述简单几何图形发生相交的正方形网格,都认为是截取范围所覆盖的正方形网格。
【专利摘要】本发明公开了一种驾驶模拟器获得交通环境信息的快速截取引擎,定位服务模块与被截取仿真对象数据存储空间连接,被截取仿真对象数据存储空间分别与仿真对象定位算法模块、仿真范围截取算法模块连接,仿真对象定位算法模块与仿真场景空间划分模块连接,仿真场景空间划分模块与仿真范围截取算法模块连接,仿真范围截取算法模块与截取服务模块连接,截取服务模块与模拟器子系统数据存储空间连接,模拟器子系统数据存储空间与仿真范围截取算法模块连接,被截取仿真对象与定位服务模块连接,驾驶模拟器各子系统与截取服务模块连接。能够实时准确地截取出驾驶模拟器所代表的车辆周围的交通仿真车辆,为驾驶模拟器交互式系统的计算提供简洁有效的数据。
【IPC分类】G06F9-455
【公开号】CN104834552
【申请号】CN201510217591
【发明人】管欣, 洪峰, 贾鑫
【申请人】吉林大学
【公开日】2015年8月12日
【申请日】2015年4月30日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1