作者:孔令德 日期:2021-09-20 13:18:47
《计算机图形学课程设计教程(Visual C++版)》:使用MFC平台提供了18个课程设计案例,详细讲解了相关图形生成原理及其具体编程实现方法。《计算机图形学课程设计教程(Visual C++版)》采用类模块的方式搭建了三维光照场景。任何三维物体只要修改点表和面表数据文件,均可以在三维光照场景中绘制出真实感图形。读者能学会什么?读者可以学会立方体、球体、交叉面和圆环等三维物体的数学建模方法,对物体进行透视投影和(线、面)消隐后,绘制为线框模型、表面模型和光照模型的方法。读者可以使用动画按钮或键盘方向键对图形进行交互操作,完成图形的实时绘制。
本书综合运用计算机图形学基本原理编写了“颜色渐变正八面体、三维五角星、光照线框球、光照正方体、金属球、圆环、钻石、太阳和月亮”等18个案例。所有案例采用面向对象语言visual c++ 6.0的mfc平台开发,并未借助opengl或direct x等图形库函数,但绘制的图形质量完全可以和后者相媲美。
本书以生成三维动态真实感图形为主线,涉及的算法主要有“中点bresenham算法”、“基于背景色的反走样算法”、“有效边表填充算法”、“正交投影和透视投影算法”、“背面剔除算法”、“z-buffer消隐算法”、“gouraud双线性光强插值算法”和“phong双线性法矢插值算法”等。以类的形式对算法进行封装,创建了三维光照场景,可以完成三维物体的透视变换、动态消隐、真实感光照和纹理映射等课程设计任务。
本书案例进阶合理、算法讲解详尽、类结构清晰,适合作为研究生教材和本科生课程设计教材,也可供计算机图形学爱好者自学使用。