您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > JAVA课程设计说明书模板
塔里木大学课程设计目录1.摘要...................................................................................................................................12.概述...................................................................................................................................22.1课程设计目的............................................................................................................22.2课程设计内容和要求................................................................................................33.系统需求分析....................................................................................................................33.1系统目标...................................................................................................................33.2主体功能...................................................................................................................34.系统总体设计...................................................................................................................34.1系统的功能模块划分...............................................................................................35.主要工作原理和关键技术介绍.......................................................................................45.1魔方旋转原理技术介绍...........................................................................................45.2关键问题解决思路....................................................................................................45.2.1三维魔方的描述问题的解决方法...................................................................45.2.2魔方整体旋转问题的解决办法.......................................................................46.代码调试.........................................................................................................................57.总结...............................................................................................................................18参考文献.............................................................................................................................19塔里木大学课程设计第1页共19页网页魔方块游戏1.摘要随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由大规模计算的海量数据处理转向大规模的事物处理和对工作流的管理,这就产生一台式计算机为核心的管理系统。在80年代成为一种流行的游戏,在中国把这游戏叫魔方块游戏。真正的魔方块总是让人不停地钻研,人们通过旋转魔方,开发自己的思想,可是有时候买一个魔方还是一件很麻烦的事情,很多人有自己的电脑,他们有时候也想能否在电脑上就能体验一下玩魔方的感觉。很多人都有自己的电脑,他们有时候也想能否在电脑上就能体验一下玩魔方的感觉。《Java高级程序设计》课程设计是计算机科学与技术专业的主要时实践性教学环节。解决具有一定规模的,具有实际意义的应用题,实现理论课所要求掌握的java解决实际问题。提高进行工程设计的基本技能及分析,解决实际问题的能力,为毕业设计和以后的工程实践打下良好的基础。解决具有一定规模的,具有实际意义的应用题,实现理论课所要求掌握的java解决实际问题。塔里木大学课程设计第2页共19页2.概述2.1课程设计目的1.真实的魔方总是让人不停地钻研,人们通过旋转魔方,开发自己的思维,可是有时候买一个魔方还是一件很麻烦的事情,很多人都有自己的电脑,他们有时候也想能否在电脑上就能体验一下玩魔方的感觉。2.知道魔方的发明和流行历史。3.知道魔方的流行玩法。4.知道三阶魔方的结构。5.提高学生科技论文写作能力,规范完成课程设计报告。2.2课程设计内容和要求魔方,Rublik’sCube又叫魔术方块,也称鲁比克方块。是匈牙利布达佩斯建筑学院厄尔诺.鲁比克教授在1974年发明的。1.三阶魔方核心是一个轴,并由26个小正方体组成。包括中心方块6个,固定不动,只一面有颜色。边角方块8个(3面有色)(角块)可移动。边缘方块12个(2面有色)(棱块)亦可转动。2对魔方的应用也乐此不疲,数学与计算机方面,研究工作者以魔方为原型和工具,研究代数学,计算机图形图像,加密算法理论等等。3.在电脑上最好能都简单的通过鼠标控制魔方游戏使其操作更简单。4.当用户按要求排列好方块后,程序弹出对话框,提示用户成功的消息。5.绘制三维仿真魔方:绘制一个六面体,是一个3*3*3形式的魔方。6.通过引进开发包DirectX基于C#,来实现绘制三维的仿真实的九宫格虚拟魔方,并且通过鼠标控制其整体的旋转,和各个层的旋转。3.系统需求分析3.1系统目标使用所学知识制作一个基于java的魔方游戏。3.2主体功能这个程序定义了一些组件,工具栏按钮,文本区和菜单。魔板游戏程序设计通过绘制三维仿真魔方等类来实现魔方游戏的整体功能。塔里木大学课程设计第3页共19页4.系统总体设计4.1系统的功能模块划分魔方游戏所用到的一些重要的类以及之间的组合关系如下图。5.主要工作原理和关键技术介绍5.1魔方旋转原理技术介绍魔方的旋转主要是通过算法记录旋转前各个小块的颜色,旋转后重新对其着色。对图形不停地进行渲染。塔里木大学课程设计第4页共19页图1-1魔方块外面图魔方6面正方体。核心是一个轴,并由26小正方体组成包括中心方块有6个,固定不动只有一面有颜色。边角方块8个可转动。5.2关键问题解决思路5.2.1三维魔方的描述问题的解决方法定义了一个Block类,用来表示一个小的六面体,以及它所在的位置的世界坐标,和给它的每个面着色的实现。5.2.2魔方整体旋转问题的解决办法通过鼠标点击拖动,控制魔方的整体旋转。定义了一个鼠标监听函数,鼠标移动后,坐标的改变将引起视图显示的角度的变化,然后视觉上给人以不同的效果。5.2.3魔方每一层旋转和打乱问题的解决方法每一层的旋转,定义了一个旋转函数,每次指定旋转层,根据其中心块的表面颜色,来执行函数。旋转函数通过改变块的颜色,视觉上给人以旋转后的效果,即重新对魔方的部分要求被改变的小块进行着色。5.3魔方的打乱塔里木大学课程设计第5页共19页魔方的打乱只是多次随机调用魔方的层旋转函数。系统实现6.代码调试importjava.applet.*;importjava.awt.*;importjava.awt.event.*;importjava.awt.image.*;importjava.awt.geom.*;importstaticjava.awt.RenderingHints.*;importjavax.swing.Timer;publicclassmextendsAppletimplementsActionListener,MouseListener,MouseMotionListener{privateint[][]xyz;//4个坐标构成的面privatedouble[]x,y,z;//原始点privatedouble[]x1,y1,z1;//旋转后的点privatedouble[][]mxy={{1,0,0},{0,1,0},{0,0,1}};//旋转矩阵privateinttime=0;privateint[]colors={0x70e33e,0x65f0e4,0xf20f2f,0xffff00,0x454545,0xaaaaaa};//六面色privateint数量=4;//在此设置是(4*4)的魔方privateint视距=800;//越大越远privateint鼠标点=-1;//装的是点击后得到的方块在xyz里的索引privateint[]鼠标点击={-1,-1};//点击时的鼠标坐标privateint[]鼠标移动={-1,-1};privatedouble[][]nou;//旋转矩阵塔里木大学课程设计第6页共19页privatedouble段号;privateint取轴;privateBufferedImagebi;privateGraphics2Dbig;//定时器publicvoidactionPerformed(ActionEvente){if(time0){for(inti=0;i数量*数量*6;i++){if(get轴(i)){for(intu=0;u4;u++){double[]hh={x[xyz[i][u]],y[xyz[i][u]],z[xyz[i][u]]};double[]hjh=setMxy(hh,nou);x[xyz[i][u]]=hjh[0];y[xyz[i][u]]=hjh[1];z[xyz[i][u]]=hjh[2];}}}time--;}repaint();}//Downloadby初始化数据publicvoidinit(){double[]临时点=newdouble[3];inti1,i2,i3,i4;int直径=100;塔里木大学课程设计第7页共19页int边距=8;int中心点=((直径+边距)*数量-边距)/2;x=newdouble[数量*数量*数量3];y=newdouble[数量*数量*数量3];z=newdouble[数量*数量*数量3];x1=newdouble[数量*数量*数量3];y1=newdouble[数量*数量*数量3];z1=newdouble[数量*数量
本文标题:JAVA课程设计说明书模板
链接地址:https://www.777doc.com/doc-3804153 .html