计算机图形学结课论文精要

2017届结课论文

《计算机图形学基础教程》

—小球的弹跳运动

学生姓名

学 号

所属学院

专 业 计算机科学与技术

班 级

塔里木大学教务处制

目录

摘 要1

1.背景1

1.1计算机图形学概述1

1.2计算机图形画面的分类2

2.OpenGL概述2

2.1程序的基本结构3

2.2状态机制4

3.方案论述4

3.1小球运动过程4

3.2简单光照模型原理4

4.程序模块分析5

4.1 小球的生成模块5

4.2小球的运动时间模块6

4.3主程序运行模块6

4.4材质定义7

4.5双缓冲技术7

5.总结7

附录 A:程序清单8

附录B: 程序运行结果13

6.致谢14

参考文献:14

小球的弹跳运动

摘 要计算机图形学(Computer Graphics,简称CG)是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看,图形主要分为两类,一类是基于线条信息表示的,如工程图、等高线地图、曲面的线框图等,另一类是明暗图,也就是通常所说的真实感图形。

计算机图形学一个主要的目的就是要利用计算机产生令人赏心悦目的真实感图形。为此,必须建立图形所描述的场景的几何表示,再用某种光照模型,计算在假想的光源、纹理、材质属性下的光照明效果。所以计算机图形学与另一门学科计算机辅助几何设计有着密切的关系。事实上,图形学也把可以表示几何场景的曲线曲面造型技术和实体造型技术作为其主要的研究内容。同时,真实感图形计算的结果是以数字图像的方式提供的,计算机图形学也就和图像处理有着密切的关系。penGL概述

OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以与Visual C++紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。

OpenGL基本函数均使用gl作为函数名的前缀,如glClearColor();实用函数则使用glu作为函数名的前缀,如gluSphere()。OpenGL基本常量的名字以GL_开头,如GL_LINE_LOOP;实用常量的名字以GLU_开头,如GLU_FILL。一些函数如glColor*()(定义颜色值),函数名后可以接不同的后缀以支持不同的数据类型和格式。如glColor3b(...)、glColor3d(...)、glColor3f(...)和glColor3bv(...)等,这几个函数在功能上是相似的,只是适用于不同的数据类型和格式,其中3表示该函数带有三个参数,b、d、f分别表示参数的类型是字节型、双精度浮点型和单精度浮点型,v则表示这些参数是以向量形式出现的。

OpenGL定义了一些特殊标识符,如GLfloat,GLvoid。它们其实就是C中的float和void。在gl.h文件中可以看到以下定义:

……

typedef float GLfloat;

typedef void GLvoid;

……

一些基本的数据类型都有类似的定义项。

2.1程序的基本结构

OpenGL程序的基本结构可分为三个部分:

第一部分是初始化部分。主要是设置一些OpenGL的状态开关,如颜色模式(RGBA或ALPHA)的选择,是否作光照处理(若有的话,还需设置光源的特性),深度检验,裁剪等等。这些状态一般都用函数glEnable(...), glDisable(…)来设置,…表示特定的状态。

第二部分设置观察坐标系的取景模式和取景框位置大小。利用了三个函数:

函数void glViewport(left,top,right,bottom):设置在屏幕上的窗口大小,四个参数描述屏幕窗口四个角上的坐标(以象素表示);

函数void glOrtho(left,right,bottom,top,near,far):设置投影方式为正交投影(平行投影),其取景体积是一个各面均为矩形的六面体;

函数void gluPerspective(fovy,aspect,zNear,zFar):设置投影方式为透视投影。

第三部分是OpenGL的主要部分,使用OpenGL的库函数构造几何物体对象的数学描述,包括点线面的位置和拓扑关系、几何变换、光照处理等等。

以上三个部分是OpenGL程序的基本框架,即使移植到

计算机图形学结课论文,计算机图形学结课论文精要.doc相关推荐

  1. 用计算机写文章 单元备课,信息技术第一单元单元备课精要.doc

    第一 2.了解计算机系统的组成,知道计算机的主要部件. 3.了解计算机的工作过程. 4.掌握鼠标的移动.单击.拖曳.双击四种操作方法,并能将这些操作灵活运用于计算机操作中. 5.了解键盘的构造和布局. ...

  2. 计算机图形学结课论文,计算机图形学基础教程结课论文

    计算机图形学是研究如何在计算机中生成.显示和处理图形的一门学科.计算机图形学具有较高的实用价值.下面是学习啦小编给大家推荐的计算机图形学基础教程结课论文,希望大家喜欢! 计算机图形学基础教程结课论文篇 ...

  3. 计算机英语基础课程论文,计算机专业英语结课论文.doc

    计算机专业英语结课论文计算机专业英语结课论文 设计任务书 课程名称: 计算机英语 设计题目: what is the internet of things 完成期限:自 2012 年 3 月 1 日至 ...

  4. 计算机的结课论文,计算机结课论文-20210510000145.docx-原创力文档

    计算机结课论文 [摘要]随着计算机技术水平不断提高,计算机的日常应用对我国教学领域产生了重大的影响,同时也为教学带来了一种全新的模式.在平面设计的教学工作中,充分利用计算机辅助设计能够有效提高教学水平 ...

  5. 13级计算机商务沟通与礼仪结课论文,计算机组装和维护结课论文

    介绍:本栏目包含关于计算机和课论文和组装的论文范文,免费给你写计算机结课论文提供相关文献资料. [摘 要]结课是课堂教学的重要环节,教师应予以充分的重视.数学课堂教学有效结课的策略有提问式结课.归纳式 ...

  6. 计算机组装装机论文,计算机组装与维护结课论文我的装机单.doc

    计算机组装与维护结课论文我的装机单 青 岛 农 业 大 学 本 科 生 课 程 论 文 论 文 题 目 我的装机单 学生专业班级 学生姓名(学号) 指 导 教 师 完 成 时 间 2012-6-1 2 ...

  7. 计算机图形学基础教程论文,计算机图形学小论文

    为毕业生写计算机图形学小论文提供计算机图形学小论文范文参考,涵盖硕士.大学本科毕业论文范文和职称论文范文,包括论文选题.开题报告.文献综述.任务书.参考文献等,是优秀免费计算机图形学小论文网站. 计算 ...

  8. 计算机图形学应用调研论文,计算机图形学的应用论文(2)

    计算机图形学的应用论文篇二 <分析计算机图形学的发展及应用> 摘要:经历了三十多年的发展,在科学计算可视化.自然景物仿真.计算机艺术.计算机制造.图形实时绘制.计算机动画以及计算机辅助设计 ...

  9. 计算机图形学的最新论文,计算机图形学论文范文参考 计算机图形学毕业论文范文[精选]...

    ★100篇免费计算机图形学论文范文,为你的写作提供相关参考,可用于计算机图形学方向的硕士论文和本科论文写作参考研究,每一篇都是经典优秀的范文格式模板,[赶紧阅读吧!] 第一篇计算机图形学论文范文参考: ...

  10. 计算机信息技术导论课程总结,信息技术导论结课报告.docx

    信息技术导论结课报告 信息技术导论结课报告--谈对计算机的认识信息技术导论这门课,改变了我以往对计算机的认识,让我明白了到底什么是计算机.计算机的发展历程.计算机在生活中的应用.对人们生活产生的重要影 ...

最新文章

  1. SAP ABAP FM AC_DOCUMENT_RECORD 研习
  2. 【Paper】2019_带有不匹配干扰的多智能体系统有限时间积分滑模控制
  3. openvino与cv2不兼容怎么办_焓湿图软件电脑不兼容怎么办
  4. 初步认识Volatile-JMM
  5. volatile的作用
  6. 【TensorFlow】通过两个简单的例子实现反向传播
  7. flask-sqlalchemy Configuration
  8. 【实践】短视频场景下信息流广告的挑战和技术实践.pdf(附下载链接)
  9. baidu 地图 鼠标移上显示标签 鼠标离开隐藏标签
  10. RestClient测试
  11. 如何在M1上运行较早的非本机Intel x86应用
  12. php.ini 中开启短标签 ?=$?
  13. pdf文字无法复制怎么办?unlock解密pdf
  14. iphone越狱 -- 红雪越狱工具
  15. mysql+两行+一样+筛选_Excel两行交换及两列交换,快速互换相邻表格数据的方法...
  16. Uber天使投资人杰森卡拉卡尼斯投资…
  17. PAT-ADVANCED1118——Birds in Forest
  18. VUE前端应用部署页面访问404问题
  19. 连续潜在变量---主成分分析
  20. [渝粤教育] 西南科技大学 园艺作物高产栽培 在线考试复习资料

热门文章

  1. JVM:如何分析线程转储
  2. 休眠自动提交命令强制MySQL在过多的磁盘I / O中运行
  3. 查询英文缩写形式(缩写词)的网站工具梳理
  4. QPW 邀请日志表(tf_invite_log)
  5. java文件复制速度_【Java】Java代码拷贝文件的速度
  6. java stopself_然后,即使我停止了服务,Context.startForegroundService()也没有调用Service.startForeground()...
  7. python opencv输出mp4_10分钟学会使用YOLO及Opencv实现目标检测
  8. 未定义与 struct 类型的输入参数相对应的函数 fetch_引入鲁棒性作为连续参数,这种新损失函数实现了自适应、随时变换...
  9. Linux共享文件夹中毒,linux服务器中毒利用Find查找病毒例子
  10. php实现文本替换,php文本替换 函数 strtr()、str_repalce()