欢迎来到天天文库
浏览记录
ID:13291521
大小:154.00 KB
页数:25页
时间:2018-07-21
《“计算机图形学”的教学实践与改革的探讨》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、“计算机图形学”的教学实践与改革的探讨摘要:本文介绍了笔者针对“计算机图形学”课程教学中存在的问题所进行的“14+4”教学改革的实践。 关键词本文来自:计算机毕业网:计算机图形学;教学研究;计算机图形生成系统;OpenGL “计算机图形学”课程传统教学模式的重点是基本理论和算法的讲解,学生在学习本课程过程中只是了解了基本图形的生成,而对于三维图形的生成和几何变换、曲面的生成、消隐算法、光照模型的模拟等理论不知如何去实现,针对这一现象,笔者提出以下几点改革,供大家共同探讨。
2、 1计算机图形生成系统 结合本课程教学内容,我们开发了计算机图形生成系统,该系统除了实现课本中讲解的基本算法外,还可实现三维图形的生成与几何变换、曲面的生成、消隐算法、光照模型的模拟等。使学生在学了本课程以后,不仅能实现简单图形的生成,还可以实现复杂的图形。 此系统可实现教材中的基本算法,如DDA和Bresenham的直线生成算法、圆的Bresenham和中点生成算法、椭圆的生成、任一多边形的生成、种子填充算法、扫描线填充算法、直线的Cohen_surtherland裁剪算法、曲线
3、曲面的生成等。 对于比较抽象的算法,采取先讲理论,再讲程序,使学生能理解这些理论用计算机言怎样去实现,从而加深理解。 另外本系统对各个部分进行了归类讲解: (1)系统可生成基本三维图形,如球体、椭球体、圆柱、圆锥、任意多面体等,在讲解相关理论后,再演示和详细讲解程序,可以使学生比较容易理解。例如可以把球体、椭球体、圆柱、圆锥归为一类讲解。先讲解一个球体的生成程序,程序用球体的参数表达式去实现,其中用到了投影变换、三维形体的几何变换、屏幕坐标系的变换、简单的反向面消隐算法,学生理解后,再把锥体、椭球
4、体的参数表达式告诉学生,让学生试图生成锥体、椭球体或与球体相近的其他形体。对于多面体的生成,利用边界模型和表面模型分别表示一个四面体,把理论与程序中的数据结构相结合,比较具体,学生易于接受,这样学生就可以对任意多面体怎样利用实体构造方法去实现了。 (2)对于三维形体的几何变换上,可以用两种方法来实现:物体不变,视点位置变换;视点位置不变,物体发生几何变换。在教学过程中,应用一种三维形体,如任一四棱锥来用两种方法实现这种变换效果,并讲解两种算法的实现程序,给学生布置一道相似的作业,让学生尝试实现。 (3)在消
5、隐算法的讲解和实现上,因为在三维图形的生成程序中已经让学生了解了简单的反向面消隐法,所以在这部分内容把Z-buffer算法和扫描线算法的理论讲解结合实现程序讲解,学生比较容易理解。 (4)自由曲面的生成,利用Bézier曲面的DeCasteljau生成算法生成双三次曲面,利用B样条曲面的Deboor算法,生成双三次B样条曲面,并生成NURBS曲面,对之进行几何变换。 (5)简单模拟光的反射、环境光的漫射效果,以及对二维、三维图形的纹理映射技术。 (6)对于几何造型方面,造型方法结合程序讲解,效果较
6、好。比如分形造型、边界模型、表面模型等,结合理论,讲一个实现程序,学生不仅可以更容易理解,还可以过到触类旁通的教学效果。 2基于OpenGL的课件 目前本课程的实验只是使用某种高级语言环境(如TurboC++)作为上机实习的平台,而当前比较流行OpenGL、Direct等开发工具,学生并不能够在TurboC++试验中获得未来就业环境下真实需要掌握的编程知识。OpenGL的这些能力为实现逼真的三维渲染效果、建立交互的三维景观提供了优秀的软件工具。OpenGL集成在Windows的内核中
7、,VB、VC++均可直接调用,初学的学生也能利用OpenGL的图形处理能力设计出高质量的三维图形以及三维交互软件。所以,笔者在本课程的课件中,每一部分的章节后面,都要讲解在OpenGL中怎样实现,如画线、几何变换、消隐、纹理映射、曲线和曲面的生成等,展示相应的程序并讲解程序。这样可以拓宽学生的知识面,提高学生的就业机会。例如(1)图形生成算法,OpenGL提供了定义点的函数,利用这个函数可以方便地向学生演示基本图形生成算法的基本原理。(2)几何变换。调用OpenGL的三个变换函数glTranslate3()、glRotate3
8、()和glScale3(),实质上相当于产生了一个近似的平移、旋转和比例矩阵。(3)投影变换。OpenGL中只提供了两种投影方式,一种是平行投影,另一种是透视投影。OpenGL平行投影函数共有两个:一个是voidglOrtho(GLdou2ble left,GLdo
此文档下载收益归作者所有