APP下载

关于计算机图形学课程教学的思考

2010-09-14王春

天中学刊 2010年5期
关键词:图形学上机可视化

王春 华

(黄淮学院 计算机科学系,河南 驻马店 463000)

关于计算机图形学课程教学的思考

王春 华

(黄淮学院 计算机科学系,河南 驻马店 463000)

计算机图形学是计算机科学与技术专业的一门重要的专业课程,其基本特点是数学公式多、抽象性强.为了激发学生的学习兴趣,调动学生的学习主动性,培养学生的创新精神和编程能力,在教学中教师应注意:重视第一节课,让学生全面了解并接受图形学;理清课程内容的脉络,避免学生“只见树木,不见森林”;尽量采用可视化教学方式,变抽象为直观;尽量采用启发式教学方式,充分调动学生的学习积极性;改进上机实验环境,使学生适应业界的需求;充分考虑学生在学习能力、爱好特长及实践能力方面的差异,设置多层次的上机实践题目.

计算机图形学;可视化教学;上机实践

0 引言

通常,非计算机专业的教师和学生对计算机图形学的研究内容存在一个误解,认为该课程就是研究如何利用图形软件(如 Flash等)进行图形的创作.其实不然,计算机图形学的主要内容是研究如何在计算机中表示图形以及利用计算机进行图形的计算、处理和显示的相关原理与算法,是一门理论性和实践性要求较强的课程[1].

计算机图形学作为计算机及其相近专业的专业课程,一般在大学三年级上学期或下学期开设,这个时间段上的学生有如下2个特点:(1)学生在大学一、二年级刚刚学过图形学所需要的数学知识,在理解图形学的原理方面困难不大;(2)学生在一年级和二年级主要学习物理、高等代数、电路、数据结构等课程,C语言或C++语言的学习通常停留在语言功能的掌握阶段,基本上没有真实设计过中等规模的项目,大部分学生的编程能力较弱.尽管学生此时有了学习计算机图形学课程的基础,但是由于不少教师在教学中过分强调图形学的数学基础,使得计算机图形学成为计算机及其相近专业学生很难掌握的一门课程.这种强调数学基础的教学方式适合数学基础优秀的学生,难以适合数学基础一般的学生,它使得计算机图形学变得深奥、抽象而难于理解,往往造成很多学生有畏难、厌学的情绪[2―3].

为了有效地提高计算机图形学课程的教学质量,我们必须综合考虑该课程的特点和学生的数学及计算机语言基础,对课堂教学、上机实践等进行精心的设计,使抽象的内容形象化,激发学生的学习兴趣.

1 理论教学

1.1 重视第一节课,让学生全面了解并接受图形学

受先入为主的影响,第一节课尤为重要.在多数“过来人”的印象中,计算机图形学和其他专业课相比,数学公式太多,难以学习和理解.要使学生对该课程产生兴趣,第一节课教学内容的设计非常关键.图形学理论本身虽然抽象,但基于图形学理论的一些作品却很形象.因此,第一节课可让学生观看若干个动画短片或游戏片段,通过这些动画、游戏所涉及的图形学知识,让学生在不知不觉中了解图形学,接受图形学,喜欢图形学.

虽然计算机图形学已经广泛地应用于CAD、计算机美术与设计、计算机动画艺术、科学计算可视化、虚拟现实等领域,但仍有很多问题还有待解决.为了进一步提高学生的学习兴趣,教师可接着介绍图形学的前沿问题,例如:实时高真实感、高分辨率渲染的技术难点,和谐自然的三维模型建模方法,具有高度物理真实的动态仿真,高精度数据的获取与处理技术,计算机图形学与图像视频处理技术的结合,等等.另外,教师还可要求学生通过互联网调查采用什么图形技术可制作出烟花、瀑布、火焰、山川、植物等效果,并提交报告,其目的仍在于让学生了解并接受图形学,提高学生的学习兴趣.

1.2 理清思路,避免学生“只见树木,不见森林”

计算机图形学涉及的算法和变换很多,如各种直线段的绘制算法、各种图元的填充算法、各种图元的裁剪算法,世界变换、视图变换、透视变换等.笔者发现,有些学生对各种算法的理解不透彻,没有一个清晰的思路,容易混淆各种算法的用途.究其原因,主要是学生在学习一个知识点的时候,不清楚其所处的位置,“只见树木,不见森林”.

计算机图形学其实就是研究如何利用计算机产生有真实感的图形,而产生图形的过程可以用图形管线来表示,如图1所示.将教材中各章节的内容与图形管线对应起来,有利于学生对各部分内容有一个清晰的认识.同时,采用图形管线顺序组织课程内容,符合学生理解问题的逻辑顺序,有利于学生理解课程的知识结构,便于学生掌握各知识点之间的关系,提高学习效率.

图1 图形绘制管线及相应的学习内容[4]

整体的教学思路可按照图1进行,而在具体讲解各知识点时,可采用对比分析、归纳总结的方式让学生深入理解解决同一问题的各种算法之间的区别.例如:对于直线段绘制算法,有 DDA、中点画线法和Bresenham等算法;Bresenham算法既包括直线段生成算法,也包括圆生成算法.

1.3 采用可视化教学,变抽象为直观

计算机图形学的一大特点是算法众多.在教学中笔者发现,不少学生往往被一些必须掌握的算法所困扰,感到它们难以理解、枯燥、难学,从而学习该课程的积极性和主动性受到影响.算法教学的复杂和困难,最主要因素是学生无法实际看到或想象出教师在课堂上口头讲授的算法,而必须通过思考执行静态的程序代码来了解数据结构的动态变化[5].由于受篇幅限制,教材上通常只呈现关键概念的图示,忽略了某些算法的细节内容,因此学生阅读时必须通过自己的理解去补足省略的细节,这会为学生学习和掌握算法带来一定的困难.为了解决这一教学问题,笔者尝试在备课时编程制作出各种算法的运行动画(图2所示为笔者制作的一种三维观察动画的截图),用于在讲解算法内容后运用多媒体平台演示算法的运行结果及各参数变化对算法结果的影响.教学实践表明,通过实现算法的可视化将算法的执行过程动态地演示出来,能够克服以往教学软件只是简单重复课本内容的弊端,帮助学生轻松地理解算法的执行过程和结构,使学生的悟性和灵感在不知不觉中得到升华,实践能力和创新能力逐渐得到提高.算法、几何变换(平移、旋转、缩放等变换)和观察变换是计算机图形学的核心内容,也是应用计算机图形学解决具体问题的基础,这些内容的教学都适于采用可视化教学手段.尽管可视化的教学手段要求教师花费更多的时间、精力去备课,但这种付出能够产生显著的教学效果.

图2 一种三维观察动画的截图

1.4 采用启发式教学,充分调动学生的学习积极性

计算机图形学算法(包括矩阵运算、解析几何等内容)需要以数学知识为支撑,而学生对数学知识的掌握是纯数学思维,教师在教学中必须把学生的这种纯数学思考引导到利用数学知识实现图形学算法、提高算法效率上.在算法教学上,笔者尝试采用“提出问题→帮助学生分析问题→找到问题的解决方案→比较解决方案的优缺点”的启发式教学模式.以直线段的绘制算法为例,讲授思路如下:(1)让学生自行设计出一个绘制直线段的算法,这时大多数学生会想到直接利用直线方程 y=ax+b,即在直线段的 x取值范围[x0,x1]内将一系列的点(x,y)作为屏幕坐标,从而把直线段显示出来(这里将该算法命名为普通算法);(2)教师指出普通算法存在的问题,如正确性、效率低下等(这可能是学生始料未及的,他们会对接下来的内容表现出强烈的学习兴趣);(3)介绍直线段的绘制算法,包括DDA算法、中点算法和Bresenham算法,并说明这些算法为什么比普通算法高效;(4)引导学生分析上述3种直线段绘制算法的优缺点及输入条件、迭代条件、终止条件等,进一步巩固教学成果.

2 上机实践

学生扎实掌握基础知识和基本技能的同时,还要重视发展动手能力,这样才能保证他们在任何时候都能快速获取新知识,适应新情况.传统的上机实验题目只是课堂上所讲算法的实现,这种验证性实验无疑将学生的行为方式和思维方式束缚在课堂的基本知识框架内,在一定程度上制约着学生创新能力的培养.为了培养创新型人才,在计算机图形学的实践环节上可从以下2个方面着手:

(1)改进上机实验环境,适应业界新需求

应尽量采用 IT界主流的软硬件并配置多种软件开发环境,包括目前工业界广泛使用的OpenGL和娱乐界使用的 DirectX等,以满足不同学生的兴趣和需要.同时,应提供高质量的图形代码供有能力的学生进一步学习,引导学生去实践一些常见的图形算法,如粒子算法、分形算法等.

(2)设置多层次的上机实践题目

根据学生在学习能力、爱好特长及实践能力方面的差异,可以将上机实验内容分为验证型、设计性和综合性3类.验证性实验是让学生对理论课程学习的图形学基本算法和 OpenGL的基本语法进行编程验证;综合性实验是在学生经过一个阶段的学习并具有一定的基本知识和基本技能的基础上,让学生综合运用图形学知识,对实验技能和方法进行综合训练的一种复合型实验;设计性实验是一种探索性的实验,即在教师的指导或引导下由学生自己选题、设计,最大限度发挥学生学习的主动性,它不但要求学生能综合运用多种知识来设计实验方案,而且要求学生能充分运用已学知识去发现和解决问题.学生根据自己的实际情况选择实践题目,能够避免题目难度相同所造成的部分学生难以发挥特长、部分学生因难度太大难以完成而挫伤学习积极性的不足.

教学是一门艺术,追求更卓越的教学效果是所有教育工作者孜孜不倦的职业目标.本文中笔者结合自己的教学实践,探讨了计算机图形学课程的教学改革问题.随着计算机技术的发展,计算机图形学课程的内容必然会不断地得到充实和更新,其适用的教学方法也不可能一成不变,这就需要我们根据该课程的特点不断地进行教学改革,最大限度地提高教学质量和教学效率.

[1] 严圣华.计算机图形学的教学模式探讨[J].长江大学学报:自然科学版,2009,6(2):375―376.

[2] 袁国武,徐丹,赵杨.“计算机图形学”实验课程改革经验与探索[J].计算机教育,2009(15):29―32.

[3] 陈国军.工科《计算机图形学》教学改革探索[J].中国石油大学胜利学院学报,2009,23(2):81―83.

[4] 刘辉.对“计算机图形学”选修课教学的思考[J].计算机教育,2009(13):164―166.

[5] 张玉新,张月清,卜治国,等.《计算机图形学》算法可视化教学研究与实现[J].河北农业大学学报:农林教育版,2009,11(2):236―239.

〔责任编辑 张继金〕

G642.421

A

1006-5261(2010)05-0089-03

2010-03-01

王春华(1980―),女,四川仁寿人,讲师,博士.

猜你喜欢

图形学上机可视化
周金应
基于CiteSpace的足三里穴研究可视化分析
思维可视化
标准化护理程序对体外膜肺氧合术患者上机各阶段用时的影响
基于CGAL和OpenGL的海底地形三维可视化
“融评”:党媒评论的可视化创新
上机数控“可疑”的高毛利率
突出实践需求的GIS专业《计算机图形学》课程优化改革
第7届国际图象图形学学术会议
非计算机专业计算机图形学教学改革初探