菜单
  

    在导入地形数据库时,首先在gvsint.gvc中将地形模型定义给一个对象,在本系统中记为TERRAIN,具体为:
    import file=$VILLAGE/terrain.gvm \
    name=TERRAIN structure=on \geometry=on
    然后在程序中将地形调入进去,具体为:
    GV_obi_instance_by_name( "TERRAIN", &terrain );//为对象取名
    GV_scn_add_object( scene, terrain );//将地形加入到场景当中
    这样也就将一个地形文件加入到场景中了。
    加入前后的场景画面对比如图4.3和图4.4:
     
    图4.3  加入地形前场景图
     
    图4.4  加入地形后场景图
    4.2.2  汽车模型的导入
    汽车模型在虚拟汽车驾驶模拟系统开发中相当于现实世界中的汽车。它是现实世界汽车在虚拟世界的反应。但是加入汽车模型,务必的注意他的纹理,否则导入的汽车模型是不完整的。
    纹理工具为载入和使用纹理图提供一个高级界面。纹理图存储在磁盘上,你的视觉应用软件可能要使用它。输入数据库时可能包含纹理映射需求,此时GVS使用纹理工具。用户也可访问GVS所使用的纹理图输入函数。它们可能需要将自己的纹理图读入GVS,这样能用低级OpenGL调用作纹理映射。
    首先将汽车模型加入到场景中,调用函数GV_scn_add_object将汽车模型加入到场景中,关键代码为:
    import file=flt/jeep.flt name=OWN_VEHICLE
    现在gvsint.gvc中将汽车模型赋给对象OWN_VEHICLE;
    然后在程序中添加汽车模型:
    GV_scn_add_object( scene, model );//将汽车模型加入到场景中
    Model代表汽车模型。
    此时汽车模型已经加入到场景里了,但它是没有纹理的。
     
    4.5    汽车模型图
     
    图4.6    加入纹理前
    用MultiGen-Paradigm软件打开汽车模型图,对其加入纹理。如图4.7,修改list Textures中得路径即可。
     
    图4.7    修改纹理路径
     
    图4.8    加入纹理后效果图
    4.2.3  房子实体导入
    房子实体的导入与汽车模型的导入原理是基本相同的,其关键代码为:
    import file=flt/farmhouse.flt name=FARMHOUSE
    在gvsint.gvc中将房子模型赋给对象FARMHOUSE。
    然后在程序中将房子加入到地形中:
    GV_obi_instance_by_name( "FARMHOUSE", &farmhouse );//为对象取名
    GV_scn_add_object( scene, farmhouse );//将房子加入到场景当中
    但这样加入房子实体是没有纹理的,其运行的效果图如图4.9:
     
    图4.9    房子实体效果图
    用MultiGen-Paradigm软件打开房子模型图,对其加入纹理。如图4.10,修改list  Textures中得路径即可。
     
    图4.10    房子实体加入纹理路径
     
    图4.11    修改纹理路径后房子实体效果图
    4.3  鼠标的控制
    利用鼠标控制汽车前进比用键盘控制汽车前进更加灵活,可以使汽车沿着任何一个方向前进。同时可以利用鼠标控制汽车的速度。
    鼠标控制汽车前进的关键技术是实时获取鼠标的位置,OpenGVS为我们提供了特定的函数GV_chn_inq_cursor_position( channel, &cursor),其中cursor记录着鼠标的位置。通过获知鼠标位置的变化情况,反馈到汽车上,将两者之间建立一种关联关系。
    在本系统中,汽车的速度由鼠标的高度决定,即driving_speed = max_driving_speed * cursor.y * cursor.y * cursor.y,汽车的方向由鼠标的x姿态角决定rotation = max_rotation * cursor.x * cursor.x * cursor.x。
    具体的关键代码为:
    /获取鼠标的属性,包括位置和角度/
    GV_chn_inq_cursor_position( channel, &cursor);//获取鼠标坐标
  1. 上一篇:MATLAB雷达有源干扰建模与仿真+文献综述
  2. 下一篇:Multisim在电子电路分析中的应用研究
  1. 超大规模集成电路中软模块的布局

  2. 光电系统近似模型研究

  3. PID控制在非线性时延离散混沌系统中的应用

  4. 基于差分进化算法的自动...

  5. 基于混沌的图像加密通信...

  6. MPS模块化生产系统的开发及研究+PLC梯形图

  7. HFSS的SIR微带带通滤波器设计

  8. 杂拟谷盗体内共生菌沃尔...

  9. java+mysql车辆管理系统的设计+源代码

  10. 乳业同业并购式全产业链...

  11. 电站锅炉暖风器设计任务书

  12. 大众媒体对公共政策制定的影响

  13. 酸性水汽提装置总汽提塔设计+CAD图纸

  14. 河岸冲刷和泥沙淤积的监测国内外研究现状

  15. 十二层带中心支撑钢结构...

  16. 中考体育项目与体育教学合理结合的研究

  17. 当代大学生慈善意识研究+文献综述

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回