基于OpenGL的3D旋转魔方的实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于OpenGL的3D旋转魔方的实现

华中科技大学电子科学与技术系 课程设计报告 ( 20-- 2012年度第 学期) 名 称:软件课程设计 题 目: 院 系: 班 级: 学 号: 学生姓名: 指导教师: 设计周数: 成 绩: 日期: 年 月 日 目 录 1.课程设计介绍……………………………………………………………… 1 1.1.内容……………………………………………………………………… 1 1.2.目的 ………………………………………………………………………1 1.3.取得的成果 ……………………………………………………………… 1 2.程序分析 …………………………………………………… ……………2 2.1. 程序原理………………………………………………………………… 2 2.1. 程序流程………………………………………………………………… 3 2.3. 数据结构………………………………………………………………… 8 2.4. 重要函数用法分析 ……………………………………………………… 8 3.结果演示与程序分析 …………………………………………………… 9 3.1. 成果演示………………………………………………………………… 9 3.2. 程序分析 ……………………………………………………………… 11 4.编程中遇到的问题…………………………………………………………12 5.课程设计小结………………………………………………………………13 参考文献………………………………………………………………………14 基于OpenGL的3D旋转魔方实现 课程设计介绍 目的 当今计算机技术流行,引领了各行各业。而程序是计算机的灵魂,因此编程能力对当今的学生而言至关重要。虽然我们在前期已经学习了C语言,但是还只对程序有一些简单的认识,说实话,是很浅显的认识。通过本软件课程设计的学习,可以从整体上对软件工程和项目有全面的认识。通过此次课程设计,可以锻炼编程能力,激发对编程的兴趣,同时也能培养良好的编程习惯。这对于个人今后的学习,今后的工作乃至今后的生活都会产生重要的影响。对于国家而言,极大的推动了计算机普及教育,提高了大学生的计算机使用水平,具有重大的意义。 内容 通过此次项目掌握软件开发模式,模块化结构分析以及程序设计流程 学会使用VC++6.0进行编程 掌握有关程序设计的思想,数据结构的知识,掌握C语言算法,掌握OpenGL编程知识如贴图与键盘控制 掌握win32编程知识,了解windows程序内部运行机制 初步培养需求分析、软件测试、调试的能力 在2X2魔方的基础上,尝试编写3X3的魔方,并实现其旋转 取得的成果 在理解Magic2D例子程序的基础上,借助了Win32平台进行了一系列调试和学习。在此次项目中,学习了Visual C++6.0软件开发环境,熟练掌握了Win32 Application开发流程。同时也学习了OpenGL的基本知识,掌握了一些OpenGL的重要技术与重要函数的使用,编写了一些简单的OpenGL程序。参考Magic2D例子流程,我对原程序进行了比较大的修改,并换上了自己的图片,实现了一个立方体贴六张不同的图片,并编写出了自己的2X2魔方程序。根据相似度分析,成功的编写出了3X3旋转魔方,并自己设计了算法,实现了各个层面的转动,转动效果很完美。同时,为了增加程序的娱乐效果,我加入了歌曲最炫民族风,虽然很简单,不过感觉非常实用且有趣。 程序分析 2.1 程序原理 (1)OpenGL OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以与Visual C++紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。OpenGL(Open Graphics Library)函数库,绘制魔方并实现魔方的绘制、随机旋转、贴图以及键盘控制等功能。采用基本图形的绘图函数及定位函数,添加相应纹理来实现魔方模型的绘制。通过读取载入BMP文件,应用纹理贴图技术来完成对魔方旋转面的处理。 (2)模型的旋转 首先对立方体进行建模。一个立方体由8个点组成,8个点组成6个面片,对立方体的几何操作本质上就是对这6个平面的操作(绘制、纹理、旋转和平移等)。点的索引号确定后,每个面片也就确定了,如{0,1,2,3}四个点构成Z向正投影面。 立方体在空间的旋转,归根到底是其顶点的旋转,如空间点(

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档