刘宇
摘要:本文分析了计算机图形学作为校内公共选修课的教学现状,根据其在课程体系中的定位及学科特点和发展趋势结合笔者所在高校的专业特色,提出了对本门课程教学内容和教学方法的改革建议,以便更好地利用有限的课时提高学生理论知识与实践能力。
关键词:计算机图形学;教学改革;教学实践
一、引言
计算机图形学主要研究如何利用计算机来表示、生成、处理和显示图形,是一门基于传统图形学理论、应用数学及计算机科学基础上的技术应用型课程。国内外的大学教程均把它作为计算机应用及相关专业中一门必不可少的专业必修课。随着计算机图形實现技术在现代科技领域中的广泛应用,其逐渐成为现代工程制造业中不可或缺的关键环节。因此,大多数高校也开设了计算机图形学公共选修课,以提供具有工程背景的学生学习计算机图形生成与处理技术的基本知识、原理和方法,培养学生开发与图形操作有关的软件设计能力,为以后学习本专业课程和从事科研工作奠定基础。
本文在分析当前高校计算机图形学公选课教学过程存在问题的基础上,结合笔者讲授本门课程的体会,探讨了教学内容、教学方法、实践手段的调整和改进方法,提出了对计算机图形学教学改革的一些建议。
二、计算机图形学的教学现状分析
当前,几乎所有科学和工程技术领域都借助计算机图形技术来加强信息的理解和传递。有鉴于此,我国大多数高校的理工科专业都开设了计算机图形学的课程。值得注意的是,一些工科专业由于自身特点未开设计算机图形学必修课,而所涉及的研究领域又会用到计算机图形处理技术,例如笔者所在高校的工学部各专业。因此,开设计算机图形学公选课,由学生自主选择学习就尤为必要。然而,在教师授课和学生学习的过程中出现了很多问题。
首先,教学内容与计算机图形学理论与技术发展严重脱节。计算机图形学的发展包括基础算法研究、图形软件和图形硬件三个方向,且基于这三个方向的方法及产品不断更新换代。但是,目前国内的计算机图形学教材基本上取自几本经典的教科书,内容仍侧重于上世纪七、八十年代的图形学技术,并且过多地强调计算机图形学的数学基础。以笔者所用校本教材为例,主要内容包括基本绘图函数、图形属性控制、二维图形程序设计、平移、旋转、投影等图形变换、曲线程序设计及真实感图形绘制等,绘图环境仍为Turbo c,图形库函数仍采用graphics.h,继续投入大量精力学习这些内容对学生利用计算机图形理论及技术解决自身专业问题帮助不大。
其次,过多地强调图形算法及相应数学基础。利用计算机显示任何图形都必须先构造出其数学模型,再将数学模型通过算法程序实现。显示和处理的图形越复杂,所用的数学模型和实现算法就越复杂。这就要求学生具备深厚的数学理论基础。但工科数学讲究实用性,且不同专业所学数学科目不尽相同,对于这种理论性太强的算法大部分工科学生难以理解。传统的授课方式侧重于强调实现算法的数学基础,久而久之学生对该门课程产生畏难心理,极大地影响学习兴趣和信心。
再次,有限的课时导致丰富的课程内容严重缩水。计算机图形学是一门涉及多个学科领域的交叉学科,涵盖的内容非常广泛,包括光栅图形学与算法、几何造型技术与算法、真实感图形学与算法、计算机动画、图形标准等等。然而,由于课时的限制(例如笔者教授的课程仅30学时),大量的理论知识被极度压缩,导致两种不良结果的产生。一是压缩后的教学内容仅限于理解基本概念及掌握一些基本图形的绘制。这些只是计算机图形学的入门课程,与开课之初介绍学科背景时向学生展示的当下最新计算机图形学研究成果存在很大差距。学生往往会感觉对课程的好奇与期待落空,继而逐渐失去对该门课程的兴趣,最后放弃学习。二是在有限的课时内要做到对各方面内容面面俱到,导致每部分内容都是泛泛之谈。学生往往在整个课程的学习过程中抓不到重点,在结课之后仍然不了解计算机图形学的主要研究内容和发展方向以及与其它学科的联系;且课程本身理论性强的特点造成讲授过程比较枯燥,学生的学习积极性和主动性受到影响。
此外,现有的教学方案中实践课所占比重很低。计算机图形学这门课程的理论性和实践性很强,并且最终所有的理论均需通过实践验证。这就要求学生具有较强的编程能力和动手能力。但是,有限的学时无法保证上机实践环节的有效开展。理论与实践的互动不足除了会使学生感到这门课程空洞、枯燥外,还会影响学生对于理论知识的理解,达不到教学目的。
通过以上分析,可以看出必须对现有的计算机图形学公选课进行改革,探讨新的教学思路、方法和手段才能实现设立该门课程的初衷,更好地完成培养计划。
三、计算机图形学的教学改革
(一)课程定位
计算机图形学公选课是为计算机应用及相关专业以外的理工科专业开设的。30个学时的学习并不是为了让学生在计算机图形领域达到专业的高度,而是为了让学生利用计算机图形技术更好地解决本专业的研究问题,其次为有余力的学生扩展视野,激发他们探索其他领域新鲜事物的兴趣,为他们提供更广阔的发展空间。因此,相应的教学内容、教学方法、教学手段及难易程度设置都应该基于这一出发点,使学生在修完本门课程之后能够有所收获,真正实现学以致用。
(二)教学内容
考虑现有的教学内容过多地强调数学基础与工科各专业各年级学生的数学水平及开设公选课的初衷相悖,针对计算机图形学涉及的数学基础理论知识做出调整。矢量运算、矩阵运算、齐次坐标、线性方程组求解等纯数学知识将不再作为独立的教学内容单元在开课初期讲解,而是在举例讲解图形绘制的算法中提及,使学生在了解整个计算机图形绘制流程的基础上自然地对这部分数学知识融会贯通,提高学习效率,且更能抓住学习的重心。
平面图形绘制及相应的程序设计部分,包括直线、圆、正多边形、函数曲线及拼图等在目前的教材中占了比较大的比例。这部分内容相对基础浅显,与计算机图形学的实际应用关系不大,且绘制这些图形的算法程序思路基本一致。因此,缩减这部分内容所占比例,选择具有代表性的两种图形在课堂上进行讲解,其余的图形绘制由学生在课下自行完成。endprint
图形的几何变换,包括二维图形的平移变换、缩放变换、旋转变换、对称变换、错切变换、复合变换以及三维图形的平移变换、缩放变换、旋转变换等在目前的教材中也占了比较大的比例。这部分理论知识较好理解,重点在于各种变换对应的齐次坐标矩阵运算。在达到教学目的的情况下,减少矩阵运算的推导过程,通过详细地讲解一个二维图形变换示例将图形变换的思路、数学运算过程及程序算法传授给学生,其余的圖形变换则可以触类旁通,由学生在课下自行练习。形体的投影变换部分内容调整也做类似安排。
为适应计算机图形软硬件的发展,增加光栅图形学部分内容,分配适当课时讲解直线段、圆弧、多边形等的扫描转换算法及裁剪、反走样和消隐等重要概念及其经典算法。增加曲线曲面造型部分内容的讲解,并将其作为课程重点之一。在介绍参数曲线、曲面、插值、拟合和光顺等概念的基础上,保持B6zier曲线与曲面、B样条曲线与曲面的授课计划,增加NURBS曲线与曲面、Coons曲面、形体在计算机内的表示、实体造型系统和三角网格的相关内容介绍。尤其是形体在计算机内的表示、求交、实体造型系统以及三角网格能够与逆向工程、有限元分析、产品设计等工程实际应用相联系,也能够体现计算机图形学的学科特色,是学生感兴趣的内容,应着重介绍。
在目前真实感图形学的教学计划基础上,增加授课学时,结合时下新研发的真实感图形技术详细讲解此部分内容,包括颜色视觉的介绍、简单光照模型、局部光照模型、光透射模型、纹理及纹理映射、整体光照模型和实时真实感图形学技术。在授课过程中加入难易适中的实例,让学生从感官上轻松理解每种模型的思路、效果,进而领会对应的算法。
摒弃传统的图形处理系统和库函数,选择当下普遍采用的图形标准OpenGL,在课堂上介绍OpenGL的程序结构和其涉及的基本几何元素绘制、坐标变换、光照处理、纹理贴图等函数和调用方法。
(三)教学方法
采用教师理论授课、课堂演示与学生上机实践相结合的教学模式,并增加学生上机实践课时,同时注重演示实例的实用性和趣味性。在理论授课环节采取图形设计与程序设计同步讲授的方式。对计算机图形学中具有一定难度的重点内容,如曲线曲面设计、三维实体造型、真实感图形显示、计算机动画等,采用案例分析的形式进行讲解。利用笔者所在高校的工科背景,通过与负责相关科研项目的老师合作,在课堂教学中引入实际的项目,并邀请相关老师的研究生以助学的方式参与到课堂教学环节中与学生互动,让学生真切地感受到计算机图形学在科研领域及企业生产中的应用,从而拓宽学生的视野,增加他们的学习兴趣。
此外,为了适应计算机图形学发展的新趋势,在授课过程中要不断地将最新的前沿理论和成果引入课堂教学中,介绍一些当前的研究热点,如计算机辅助设计与制造、科学可视化、真实感图形实时绘制、计算机动画、虚拟现实技术等。同时,教会学生查阅科技文献,培养自学能力。
(四)教学手段
除了日常教学所用幻灯片、板书以外,还应使用AutoCAD、CATIA、MATLAB等绘图软件进行教学,如在讲解利用计算机辅助设计对工业产品进行二次开发时,可采用AutoCAD软件演示,在讲解实体造型设计时,可采用CATIA、MATLAB等软件创建复杂的自由曲面,还可使用ABAQUs等有限元软件演示网格划分。另外,适当地在课堂上放映一些实际工业生产中用到计算机图形处理技术的视频也可以增加学生的学习兴趣。
四、结语
计算机图形学的发展日新月异,应用领域也不断拓展。为了能在有限的学时内尽量让学生学懂、学透更多的计算机图形知识,必须充分考虑学生对知识的接受程度和不同专业与计算机图形学的结合特色,选取精要内容进行讲解,注重理论基础和实用性,使学生在扎实掌握基本理论知识的基础上更广泛地接触高级应用部分。教师也要在教学过程中不断地更新教学理念,特别是随着制造业面临的全球化市场竞争以及网络化制造模式的开启,计算机图形学的教学内容和方向也要顺应大趋势随之改变,使学生觉得这门课新颖有用,真正用心去学,从而为以后学习相关课程、从事相关研究工作奠定坚实的基础。endprint