至此室内模型已经设计出来了,另外我还要进行功能的设计。我把五个房间要实现的功能,转化成网页或软件。并把它们添加到相应的墙上,那么整个系统就实现了。
各个房间设计如下:游戏室是一个简单的方块益智游戏,影视室是一个视频播放器,地图室是三个不同类型的地图网站,图展室是两个图片浏览器,冲浪室是四个简易的网页浏览器。由于在虚拟现实中对各个功能的要求与专业的单个软件要求程度有很大的区别,所以本系统设计的软件不追求功能强大,而是功能够用。
本系统的网页和软上的功能设计如下:
地图网页:
调用google地图来实现地形地图、卫星地图和平面地图三个静态网页。
网页浏览器:毕业论文http://www.751com.cn/
实现浏览输入的网址和浏览历史中的前一页和后一页。
图片浏览器:原文请加辣.文^论,文'网QQ3249.114
打开图片,浏览上一张、下一张图片和自动播放图片操作,能对图片进行旋转、放大、缩小操作。
视频播放器:
具有暂停、播放、快进、慢进功能,另外还提供了进度条来控制播放。
方块游戏:
整个游戏有如下控制:开始游戏、暂停游戏、重新开始、更改颜色、方块贴图、网格显示、方块提示、打开声音、是否坠落、添加方块、旋转游戏。
3.3程序设计
程序结构设计
整个系统分为以下几个模块:建模模块、视频播放模块、图片浏览模块、益智游戏模块、地图模块和图片浏览模块。在模块结构上采用了分层结构,其中视频播放模块、图片浏览模块、益智游戏模块和图片浏览模块,分别装在各自的文件夹中。由于这些模块是供建模时调用的,所以把这些文件夹放在建模模块里。地图模块虽然是一个模块,但在程序它属于建模中用到的资源,所以把它放在建模模块同一级目录中。另外建模用的图片,也用在建模模块下建一个wallpic文件来装图片。整个工程结构如下:
图3-3 代码结构图
图3-4 层次结构图
程序模块设计
整个系统以建模模块为主模块,其他模块作为子模块和图片、网页资料一样都是供建模时调用的。所以在程序设计对各个模块的类设计提出了严格的要求:各个模块可由多个类组成,但最终实现模块时,只要实例化一个类就行了,也就是说其他的类聚合在这个类中。同理建模这个模块也设计成一个类,最终只提供一个类给主函数使用即可。另外为了使主、子模块间能够方便调用,对各个模块也进行统一要求,其要求如下:
1. 子模块各自封装成一个类,以供调用。
2. 子模块的类必须是继承Qwidget类。
3. 主、子模块和子模块间没有依赖关系。
4. 网页浏览器模块,还要提供一个初始化网页的接口。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页