按中。和样,不论的实例是产生于主战坦克还是敌方坦克,他么都是个类的实例,只是在实例化这个实例的时候给了它个的值,这个值和产生它的对象时相等的。我们可以通过的构造函数看到类的些属性,包括颜色速度半径隶属于哪个坦克自己的精灵等。子弹也分好坏,,的工作很少,与坦克的碰撞在类中实现了。只有个与屏幕边缘的碰撞检测,也就是方法。当检测到碰撞时,将这个实例从的实例中移除。类的详细设计类有三个方法,是用来打开音乐和关闭音乐的。这个音乐文件必须是格式的文件。方法用来打开指定文件名的音乐文件,方法打开实例的音乐文件。方法暂停音乐的播放。类的详细设计类中的变量和方法都是静态的,这样只需要直接通过类名类使用。程序中设置了个关卡,所以这里有个用于绘制地图的静态的二维数组。为了将相应的数组与相应的关卡对应起来,类中有个专门用来存放二维数组的三维数组,如下然后我们用个的方法得到相应关卡的表示地图的二维数组数据库的详细设计本程序中,的作用是存储游戏的那些关卡已经被破解。实际上,数据库中至存储了个记录,就是当前的关卡经被破解到的关卡数量加上实际上,这个数字和中的变量相对应的,也就是它是从开始的和破解这个关卡的玩家姓名。这里为了简化程序,玩家的统为。本游戏初始化只有第关是被破解的。程序中的数据库的操作放在了类中,这个类中的个主要方法就是他修改数据库中的数据,为修改后的被破解的地图下标,对应关卡加。容器和遍历在整个程序中用到了界面时,我们按下了,程序会返回到选择关卡的界面,如图。玩家可以通过确定键和来跳回到游戏对打界面,但是这时的选择关卡是没有意义的。也就是说,无论玩家是选择哪个关卡,用的是确定键还是键,程序都会跳回到如图所示的状态,并且,点击以后游戏才会开始,进入图的状态。图图图中双方交战的各种测试无论是坦克双方的移动,子弹的打出,还是子弹坦克地图和屏幕边缘的碰撞检测等的测试通过单独的图片是不能证明问题的,必须在实际的操作中才能测试出来,但是通过上面的那些截图也能看出这个程序所必须具备的功能的大概的正确性。下面对游戏的屏幕左上角所显示的字符串信息与程序的逻辑之间的正确性。游戏初始化时,玩家有十条生杀敌数为,关卡为当前所在关卡。游戏过程中这三个字符串分别表示当时玩家的生命值玩家杀掉的敌方坦克的总数量和当前所在关卡。如图为初始化时的状态。图为刚刚进入第二关时的状态。当玩家的生命值减少到时,游戏结束。这时,玩家可以看到屏幕中间显示的的字符串,如图图图图第七章结论这是个小游戏,但对于我来说却是个不小的工程。从开始到将游戏写到现在的这个样子的过程,实际上就是遇到问题然后再解决问题的过程是个学习的过程。最开始的时候,我并没有将这个游戏的所有功能和所有的细节都考虑在其内。而是在原有内容的基础上添加功能。从软件工程的角度讲是自上而下逐步求精的软件工程方法。但这对框架的可拓展性又极高的要求,所以作为初学者的我在写代码的过程中深深地体会到了框架和软件工程学的方法的重要性。游戏运行起来还有许许多多的问题,还有很多地方需要优化。游戏缺少开始部分的画面,可以是个很酷的背景图片。这点实现起来其实挺简单,但作为个细节方面的不影响大局的部分,我将其省略了。游戏可以设置更多更复杂的关卡,但这不是编程以内的问题,同时也是个比较耗时的工作,这个可以留到以后慢慢优化。在真正对战的工程中,主战坦克可能会出现即使与敌方坦克发生了碰撞也没有检测到的问题。敌方坦克可能会纠结在屏幕的角上不停地变向而无法离开。这是程序的两个小,目前还没有找到问题的根由。程序中,无论是子弹的速度,主战坦克的速度,都是不变的。程序需要拓展,让它们的速度可变,这样可以提高程序的可玩性。总体上讲,这个程序只能算是坦克大战的雏形,还有很多需要添加改进和优化的地方。虽然这个游戏作为毕业论文已经结束,但我还是会在它的基础上继续修改和优化,将其完善。这只是个小小的开始。参考文献陈立伟,张克非精通手机游戏与应用程序设计张伶,林琪译技术手册北京中国电力出版社,印旻语言与面向对象程序设计北京清华大学出版社吴延昌,冯萍,苏聪基于技术的应用开发与研究微电子学与计算机魏永红基于技术的手机信息查询系统的设计与实现微计算机信息,仵博,张立涓无线开发实用教程北京清华大学出版社,容器来装坦克和子弹,在绘图,碰撞检测等很多地方都需要对这个容器中的对象进行遍历,但中不提供这种功能,为了简化大量的遍历带来的麻烦,我在这里拓展了类而创建了个的子类。它里面有个方法叫,它的功能和用法和中的完全样。在这个包中,定义了个接口继承,拓展了个新的方法,它返回个接口对象,拥有上面的两个方法。同时,在中定义了个实现了接口的内部类,它实现了的两个方法。第六章游戏的运行与测试测试方案测试方式主要有两种静态测试和动态测试,我们主要采用的是动态测试。由于动态测试是通过运行程序来检验软件的动态特性和结果的正确性,同时也是对程序运行进行评价的过程,动态测试包括运行解释和模拟。本系统主要是在上的测试,主要依靠系统和运行结果与预期结果进行比较,看是否实现预期的功能,以达到系统的全面行可行性等。测试项目本程序包括如下的几个测试模块中相应按钮事件的测试关卡的测试数据库功能的测试中的暂停开始等按钮事件的测试中双方交战的各种测试中相应按钮事件的测试在正确的运行程序后,将进入选择界面,如图。当通过上下键选择游戏说明并按下确定键时,程序会跳向图的界面。在所示的界面中,键盘按下收到程序会返回到所示的界面。当通过上下键选择开始并按下确定键时,程序会跳向图所示选择关卡的界面。图图图关卡的测试数据库功能的测试当程序显示在图所示的界面是,当通过上下键选择游戏说明并按下确定键时,程序会自动进入相应的关卡。这里抽样出前三个关卡的截图,图非别为为第关第二关和第三关的关卡。图图图当关卡未被破解时,我们可以看到此关未解锁的提示,见图图中的暂停开始等按钮事件的测试当双方处在如上面的三个图所示的交战状态时,我们可以通过下面的按钮控制游戏。当我们按下时,游戏会暂停,同时,会变成,如图所示。当游戏处于暂停状态,当我们下时置合金刀刀尖圆弧半径为游标卡尺车硬质合金刀镗刀游标卡尺磨砂轮内径千分尺滚滚刀专用量具车切断刀镗刀专用量具铣三面刃铣刀量块钻麻花钻塞规工序名称工序余量工序尺寸工序尺寸公差粗糙度半精车粗车毛坯确定切削用量及基本时间切削用量包括背吃刀量进给量和切削速度。确定顺序是先确定再确定。计算过程见教材工序Ⅰ切削用量及基本时间的确定本工序为粗车车端面外圆及镗孔。已知加工材料为钢,锻件,有外皮机床为卧式车床,工件装卡在三爪自定心卡盘中。下表所示为离合器齿轮的机械加工工艺规程卡机械加工工艺过程卡片产品型号零件图号产品名称零件名称离合器齿轮共页第页材料牌号毛坯种类模锻件毛坯外形尺寸每毛坯件数每台件数备注工序号工名序称工序内容车间工段设备工艺装备工时准终单件下料模锻件锻热正火热车粗车外圆及台阶面与端面粗镗孔金工三爪自定心卡盘车粗车外圆及其端面粗车镗孔金工三爪自定心卡盘车光右端面半镗车孔金工三爪自定心卡盘车半精车外圆及台阶面倒角金工锥套心轴车光左端面,半精车外圆车油槽倒角半精镗孔金工三爪自定心卡盘磨磨内孔金工三爪自定心卡盘滚粗精滚至尺寸金工心轴装夹铣铣键槽金工专用铣夹具设计日期校对日期审核日期标准化日期会签日期标记处数更改文件号签字日期标记处数更改文件号签字日期机械加工工序卡产品型号零件图号产品名称零件名称离合器齿轮共页第页车间工序号工序名称材料牌号金工粗车毛坯种类毛坯外形尺寸每毛坯可制件数每台件数模锻件设备名称设备型号设备编号同时加工件数夹具编号夹具名称切削液三爪自定心卡盘工位器具工步号工步内容工艺装备主轴转速切削速度进给量切削深度进给次数工步工时机动辅助粗车端面三爪自定心卡盘粗车外圆硬质合金车刀粗车外圆车削长度为内圆车刀硬质合金车刀粗镗孔游标卡尺设计校对审核标准化会签标记处数更改文件号签字日期标记处数更改文件号签字日期的生产类型根据设计题目可知台年,件台结合生产实际,备品率和废品率分别取为和。代入公式得该零件的生产纲领件年零件是机床上的齿轮,质量为,查表可知其属轻型零件,生产类型为中批量生产。选择毛坯,确定毛坯尺寸,设计毛坯零件合图选择毛坯该零件材料为钢,而且属于薄壁的圆盘类中小型零件,考虑加工工序较多,会经常承受交变载荷及冲击载荷,因此应该选用锻件,可得到连续和均匀的金属纤维组织,保证零件工作可靠。又由于零件年产量为件,属中批量生产,而且零件的轮廓尺寸不大,故可采用模锻成形,可获得较好的尺寸精度和较高的生产率。确定机械加工余量毛坯尺寸和公差查金属机械加工工艺人员手册,可知钢质模锻的公差及机械加工余量按确定。要确定毛坯的尺寸公差及机械加工余量,先确定如下参数。锻件公差等级。由该零件的功用和技术要求,确定其锻件公差等级为普通级。锻件质量。根据零件成品质量,估算为。由于该零件为圆形,假设其最大直径为,长为,则由圆形锻件计算质量公式为钢材密度,可知锻件外廓包容体质量−。所以,。由于介于和之间,故该零件的形状复杂系数属级。零件表面粗糙度。由零件图知,除孔为以外,其余各加工表面为按中。和样,不论的实例是产生于主战坦克还是敌方坦克,他么都是个类的实例,只是在实例化这个实例的时候给了它个的值,这个值和产生它的对象时相等的。我们可以通过的构造函数看到类的些属性,包括颜色速度半径隶属于哪个坦克自己的精灵等。子弹也分好坏,,的工作很少,与坦克的碰撞在类中实现了。只有个与屏幕边缘的碰撞检测,也就是方法。当检测到碰撞时,将这个实例从的实例中移除。类的详细设计类有三个方法,是用来打开音乐和关闭音乐的。这个音乐文件必须是格式的文件。方法用来打开指定文件名的音乐文件,方法打开实例的音乐文件。方法暂停音乐的播放。类的详细设计类中的变量和方法都是静态的,这样只需要直接通过类名类使用。程序中设置了个关卡,所以这里有个用于绘制地图的静态的二维数组。为了将相应的数组与相应的关卡对应起来,类中有个专门用来存放二维数组的三维数组,如下然后我们用个的方法得到相应关卡的表示地图的二维数组数据库的详细设计本程序中,的作用是存储游戏的那些关卡已经被破解。实际上,数据库中至存储了个记录,就是当前的关卡经被破解到的关卡数量加上实际上,这个数字和中的变量相对应的,也就是它是从开始的和破解这个关卡的玩家姓名。这里为了简化程序,玩家的统为。本游戏初始化只有第关是被破解的。程序中的数据库的操作放在了类中,这个类中的个主要方法就是他修改数据库中的数据,为修改后的被破解的地图下标,对应关卡加。容器和遍历在整个程序中用到了界面时,我们按下了,程序会返回到选择关卡的界面,如图。玩家可以通过确定键和来跳回到游戏对打界面,但是这时的选择关卡是没有意义的。也就是说,无论玩家是选择哪个关卡,用的是确定键还是键,程序都会跳回到如图所示的状态,并且,点击以后游戏才会开始,进入图的状态。图图图中双方交战的各种测试无论是坦克双方的移动,子弹的打出,还是子弹坦克地图和屏幕边缘的碰撞检测等的测试通过单独的图片是不能证明问题的,必须在实际的操作中才能测试出来,但是通过上面的那些截图也能看出这个程序所必须具备的功能的大概的正确性。下面对游戏的屏幕左上角所显示的字符串信息与程序的逻辑之间的正确性。游戏初始化时,玩家有十条生杀敌数为,关卡为当前所在关卡。游戏过程中这三个字符串分别表示当时玩家的生命值玩家杀掉的敌方坦克的总数量和当前所在关卡。如图为初始化时的状态。图为刚刚进入第二关时的状态。当玩家的生命值减少到时,游戏结束。这时,玩家可以看到屏幕中间显示的的字符串,如图图图图第七章结论这是个小游戏,但对于我来说却是个不小的工程。从开始到将游戏写到现在的这个样子的过程,实际上就是遇到问题然后再解决问题的过程是个学习的过程。最开始的时候,我并没有将这个游戏的所有功能和所有的细节都考虑在其内。而是在原有内容的基础上添加功能。从软件工程的角度讲是自上而下逐步求精的软件工程方法。但这对框架的可拓展性又极高的要求,所以作为初学者的我在写代码的过程中深深地体会到了框架和软件工程学的方法的重要性。游戏运行起来还有许许多多的问题,还有很
温馨提示:手指轻点页面,可唤醒全屏阅读模式,左右滑动可以翻页。
第 1 页 / 共 56 页
第 2 页 / 共 56 页
第 3 页 / 共 56 页
第 4 页 / 共 56 页
第 5 页 / 共 56 页
第 6 页 / 共 56 页
第 7 页 / 共 56 页
第 8 页 / 共 56 页
第 9 页 / 共 56 页
第 10 页 / 共 56 页
第 11 页 / 共 56 页
第 12 页 / 共 56 页
第 13 页 / 共 56 页
第 14 页 / 共 56 页
第 15 页 / 共 56 页
预览结束,还剩
41 页未读
阅读全文需用电脑访问
1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。
2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。
3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。
1、该文档不包含其他附件(如表格、图纸),本站只保证下载后内容跟在线阅读一样,不确保内容完整性,请务必认真阅读。
2、有的文档阅读时显示本站(www.woc88.com)水印的,下载后是没有本站水印的(仅在线阅读显示),请放心下载。
3、除PDF格式下载后需转换成word才能编辑,其他下载后均可以随意编辑、修改、打印。
4、有的标题标有”最新”、多篇,实质内容并不相符,下载内容以在线阅读为准,请认真阅读全文再下载。
5、该文档为会员上传,下载所得收益全部归上传者所有,若您对文档版权有异议,可联系客服认领,既往收入全部归您。