毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
基于OpenGVS的虚拟汽车驾驶模拟系统的开发(11)
图4.12 汽车贴地行驶
4.4.2 汽车与房子碰撞检测
OpenGVS提供了两个物体之间的碰撞检测函数int GV_geo_inq_obi_collision( GV_Obi object1, GV_Obi object2, G_Boolean * collision_out ); OpenGVS中每个物体都会有一个包围盒,两个物体之间的碰撞检测实际上是检测物体的包围盒是否碰撞,如果有交集说明碰撞了,否则没有碰撞。当场景中物体数目很多时,这种方法不适合用于通用碰撞检测;但是对于特定的物体之间的碰撞,检测速度很快。
在本系统中,汽车和房子都是两个特定的物体,每要前进一步,先用碰撞检测函数检测前进以后是否会发生碰撞,如果有碰撞则汽车不前进,将当前没有碰撞的位置赋给汽车;否则,继续前进。
其关键代码为:
GV_geo_inq_obi_collision( vehicle, farmhouse,&collision ); //检测车与房子是否碰撞
if(collision)//如果碰撞
{
GV_obi_set_position( vehicle, &vehicle_pos );//将当前的位置赋给汽车
GV_obi_set_rotation( vehicle, &vehicle_rot );//将当前的姿态角赋给汽车
return status;
}
这个函数是在GV_user_proc()函数中调用的,所以可以实时响应。
图4.13 汽车与房子碰撞
结 论
本课题研究虚拟汽车驾驶模拟系统的开发,在开发过程中是利用OpenGVS开发平台开发的。建立一个人机交互式的界面,人可以通过键盘切换驾驶视角,通过移动鼠标来控制汽车的行驶,有较好的立体感,达到了虚拟现实的作用。取得的具体成果有以下几个(一)实现了一个可视化的人机交互平台;(二)可以在OpenGVS中导入一个地形数据库及三文模型;(三)场景的渲染;(四)通过鼠标可以控制汽车行驶及通过键盘切换驾驶视角;(五)汽车可以贴地行驶并撞上障碍物时可以停止。
尽管本课题取得了一些成果,但不可否认,本课题还是存在着一些问题的。主要体现在两个方面,第一,由于调入的地形数据库是一个整体,所以我只能通过加入一个房子实体来验证物体与物体间的碰撞,但是汽车还是可以穿过树及栅栏,这是不符合实际的;第二,在实现汽车与房子的碰撞过程中,存在bug,汽车前进的步长不能及时变小,需要缓慢下降,即会出现鼠标往回移动时,汽车可能会向前移动一小步。这其实与汽车速度设置有关。
共11页:
上一页
1
2
3
4
5
6
7
8
9
10
11
下一页
上一篇:
MATLAB雷达有源干扰建模与仿真+文献综述
下一篇:
Multisim在电子电路分析中的应用研究
认知无线电网络中基于双...
基于TCP/IP技术的转向架振动测试系统设计
基于PM2.5浓度的健康出行路径规划及实现
基于涡旋电磁波的新型雷达成像技术研究
基于相关滤波器的长期跟踪算法研究
基于ZigBee协议轨道交通环...
变分模态分解方法研究及...
《醉青春》导演作品阐述
中国古代秘书擅权的发展和恶变
国内外无刷直流电动机研究现状
浅谈传统人文精神茬大學...
谷度酒庄消费者回访调查问卷表
辩护律师的作证义务和保...
拉力采集上位机软件开发任务书
多元化刑事简易程序构建探讨【9365字】
高校网球场馆运营管理初探【1805字】
浅谈新形势下妇产科护理...