• 计算机图形学实验及课程设计(Visual C++版)(第2版)
21年品牌 40万+商家 超1.5亿件商品

计算机图形学实验及课程设计(Visual C++版)(第2版)

全新正版 急速发货

44.2 7.5折 59 全新

库存6件

天津武清
认证卖家担保交易快速发货售后保障

作者孔令德,康凤娥

出版社清华大学出版社

ISBN9787302489498

出版时间2018-04

装帧平装

开本16开

定价59元

货号25259486

上书时间2024-12-19

当科图书专营店

五年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言

出版 说 明

我国高等学校计算机教育近年来迅猛发展,应用所学计算机知识解决实际问题,已经成为当代大学生的能力。

时代的进步与社会的发展对高等学校计算机教育的质量提出了更高、更新的要求。现在,很多高等学校都在积极探索符合自身特点的教学模式,涌现出一大批非常优秀的精品课程。

为了适应社会的需求,满足计算机教育的发展需要,清华大学出版社在进行了大量调查研究的基础上,组织编写了“高等学校计算机专业教材精选”。本套教材从全国各高校的优秀计算机教材中精挑细选了一批很有代表性且特色鲜明的计算机精品教材,把作者们对各自所授计算机课程的独特理解和先进经验给全国师生。

本套教材的特点如下。

(1)编写目的明确。本套教材主要面向广大高校的计算机专业学生,使学生通过本套教材,学习计算机科学与技术方面的基本理论和基本知识,接受应用计算机解决实际问题的基本训练。

(2)注重编写理念。本套教材作者群为各高校相应课程的主讲,有一定经验积累,且编写思路清晰,有独特的教学思路和指导思想,其教学经验具有推广价值。本套教材中不乏各类精品课配套教材,并力图努力把不同学校的教学特点反映到每本教材中。

(3)理论知识与实践相结合。本套教材贯彻从实践中来到实践中去的原则,教材中的许多必须掌握的理论都将结合实例来讲,同时注重培养学生分析、解决问题的能力,满足社会用人要求。

(4)易教易用,合理适当。本套教材编写时注意结合教学实际的课时数,把握教材的篇幅。同时,对一些知识点按教学指导委员会的精神进行合理取舍与难易控制。

(5)注重教材的立体化配套。大多数教材都配套教师用课件、习题及其解答,学生上机实验指导、教学网站等辅助教学资源,方便教学。

随着本套教材陆续出版,相信能够得到广大读者的认可和支持,为我国计算机教材建设及计算机教学水平的提高,为计算机教育事业的发展做出应有的贡献。



导语摘要
本书是与《计算机图形学基础教程(Visual C  版)(第2版)》(ISBN 9787302297529)配套的实验教材,提供了18个综合性教学实验和5个课程设计项目,可以满足计算机图形学课堂上机实验和设计周课程设计任务。实验项目编排由浅入深,通过定义基础类、直线类、变换类、填充类、光照类,*终构造了三维动态光照场景。本书的全部内容都基于MFC框架完成,彩插中展示的所有图形均使用CDC类的SetPixel()成员函数绘制,未包含任何图形学库。教学实验和课程设计项目的开发过程按照OpenGL的操作流程编写,易于引导读者从图形学的原理领域进入应用领域。 本书的教学实验和课程设计项目的源代码和实验拓展项目的可执行文件全部提供在笔者的个人网站(http://www.klingde.com/)上,请读者下载后参照源代码学习。通读本书,读者可以轻松掌握多面体、球体、圆环等三维物体线框模型的建模方法。在三维动态光照场景中,可以调整物体表面模型的材质属性、添加纹理细节,改变视点和光源的位置,完成三维真实感图形的动态绘制。本书内容全面、案例丰富、注重理实一体化,适合作为本科计算机图形学的实验和课程设计教材。本书为源代码提供了详尽的注释,可供计算机图形学爱好者从编程的角度理解和掌握计算机图形学原理。

目录

目录


部分教
学 实 验实验任务书3实验1绘制金刚石图案4


1.1实验目的4


1.2实验要求4


1.3效果图4


1.4实验准备5


1.5实验步骤5


1.5.1创建Test工程实验框架5


1.5.2绘制金刚石图案15


1.5.3写出实验报告24


1.6思考与练习24实验2绘制任意斜率的直线段28


2.1实验目的28


2.2实验要求28


2.3效果图28


2.4实验准备29


2.5实验步骤29


2.5.1定义颜色类CRGB29


2.5.2设计CLine直线类32


2.5.3消息映射37


2.5.4写出实验报告41


2.6思考与练习41实验3交互式绘制多边形45


3.1实验目的45


3.2实验要求45


3.3效果图45


3.4实验准备46


3.5实验步骤46


3.5.1人机交互技术46


3.5.2双缓冲技术48


3.5.3绘制多边形49


3.5.4设计CPtrArray类49


3.5.5有效边表填充算法50


3.5.6写出实验报告58


3.6思考与练习58实验4二维几何变换61


4.1实验目的61


4.2实验要求61


4.3效果图61


4.4实验准备62


4.5实验步骤62


4.5.1静态切分视图框架62


4.5.2设计左窗格视图65


4.5.3设计CTestDoc类69


4.5.4设计包含齐次坐标的二维点类CP2 69


4.5.5设计二维几何变换类70


4.5.6设计双缓冲74


4.5.7读入图形顶点75


4.5.8绘制图形75


4.5.9碰撞检测76


4.5.10定时器函数76


4.5.11禁止背景刷新函数77


4.5.12写出实验报告77


4.6思考与练习77实验5直线段裁剪80


5.1实验目的80


5.2实验要求80


5.3效果图80


5.4实验准备81


5.5实验步骤81


5.5.1定义CP2类81


5.5.2OnDrw()函数82


5.5.3绘制裁剪窗口82


5.5.4鼠标左键按下函数83


5.5.5鼠标移动函数83


5.5.6编码函数84


5.5.7裁剪函数85


5.5.8写出实验报告87


5.6思考与练习87实验6立方体线框模型正交投影89


6.1实验目的89


6.2实验要求89


6.3效果图89


6.4实验准备90


6.5实验步骤90


6.5.1立方体数学模型90


6.5.2三维变换91


6.5.3正交投影93


6.5.4设计三维点类93


6.5.5定义三维变换类95


6.5.6定义点表100


6.5.7定义面表100


6.5.8绘制立方体线框模型101


6.5.9键盘控制101


6.5.10动画控制102


6.5.11写出实验报告104


6.6思考与练习104实验7立方体线框模型透视投影106


7.1实验目的106


7.2实验要求106


7.3效果图106


7.4实验准备107


7.5实验步骤107


7.5.1透视投影变换的实现109


7.5.2定义点表110


7.5.3定义面表111


7.5.4绘制立方体111


7.5.5缩小立方体112


7.5.6放大立方体112


7.5.7写出实验报告112


7.6思考与练习112实验8动态三视图115


8.1实验目的115


8.2实验要求115


8.3效果图115


8.4实验准备116


8.5实验步骤116


8.5.1建立多面体的数据结构116


8.5.2创建2×2静态切分窗格117


8.5.3建立齐次三维点类117


8.5.4建立表面类119


8.5.5内存复制120


8.5.6三视图变换矩阵122


8.5.7矩阵相乘函数123


8.5.8绘制多面体斜等测图123


8.5.9绘制三视图125


8.5.10写出实验报告125


8.6思考与练习126实验9交互绘制Bezier曲线128


9.1实验目的128


9.2实验要求128


9.3效果图128


9.4实验准备129


9.5实验步骤129


9.5.1Bezier曲线的分割递推德卡斯特里奥算法129


9.5.2德卡斯特里奥函数130


9.5.3绘制Bezier曲线131


9.5.4绘制控制多边形131


9.5.5鼠标左键按下的函数132


9.5.6鼠标右键按下的函数133


9.5.7鼠标移动的函数133


9.5.8写出实验报告133


9.6思考与练习134实验10交互绘制三次B样条曲线135


10.1实验目的135


10.2实验要求135


10.3效果图135


10.4实验准备136


10.5实验步骤136


10.5.1三次B样条曲线的几何性质136


10.5.2绘制控制多边形137


10.5.3绘制三次B样条曲线138


10.5.4鼠标移动函数138


10.5.5写出实验报告139


10.6思考与练习139实验11旋转的Koch雪花142


11.1实验目的142


11.2实验要求142


11.3效果图142


11.4实验准备143


11.5实验步骤143


11.5.1Koch曲线的生成元143


11.5.2绘制Koch雪花145


11.5.3双缓冲函数145


11.5.4分形函数146


11.5.5Koch函数147


11.5.6写出实验报告147


11.6思考与练习147实验12颜色渐变立方体150


12.1实验目的150


12.2实验要求150


12.3效果图150


12.4实验准备151


12.5实验步骤151


12.5.1定义矢量类CVector151


12.5.2定义颜色点类154


12.5.3定义点表155


12.5.4定义面表156


12.5.5绘制物体156


12.5.6颜色渐变有效边表填充算法157


12.5.7写出实验报告165


12.6思考与练习165实验13地理划分线框球169


13.1实验目的169


13.2实验要求169


13.3效果图169


13.4实验准备170


13.5实验步骤170


13.5.1球体几何模型170


13.5.2绘制球体173


13.5.3写出实验报告175


13.6思考与练习175实验14交叉条消隐180


14.1实验目的180


14.2实验要求180


14.3效果图180


14.4实验准备181


14.5实验步骤181


14.5.1交叉条数学模型181


14.5.2叠加条数学模型183


14.5.3消隐算法184


14.5.4定义深度缓冲点表185


14.5.5定义深度排序点表186


14.5.6设置坐标系187


14.5.7禁用深度缓冲绘制交叉条187


14.5.8启用深度缓冲绘制交叉条188


14.5.9深度排序函数188


14.5.10设置背景色为黑色189


14.5.11深度缓冲消隐算法189


14.5.12写出实验报告199


14.6思考与练习199实验15立方体光照模型201


15.1实验目的201


15.2实验要求201


15.3效果图201


15.4实验准备202


15.5实验步骤202


15.5.1简单光照模型202


15.5.2设计光源类CLightSource205


15.5.3设计材质类CMaterial207


15.5.4设计光照类CLighting208


15.5.5设计默认光源颜色和材质颜色211


15.5.6设计红色、绿色和蓝色光源菜单项211


15.5.7设计红宝石、绿宝石和蓝宝石材质菜单项212


15.5.8设计变换类213


15.5.9写出实验报告217


15.6思考与练习217实验16球体Gouraud光照模型221


16.1实验目的221


16.2实验要求221


16.3效果图221


16.4实验准备222


16.5实验步骤222


16.5.1双线性光强插值模型算法222


16.5.2设置光源颜色和材质颜色222


16.5.3读入网格小面表223


16.5.4读入网格顶点表224


16.5.5计算面片顶点的颜色225


16.5.6绘制球面226


16.5.7写出实验报告227


16.6思考与练习227实验17球体Phong光照模型229


17.1实验目的229


17.2实验要求229


17.3效果图229


17.4实验准备230


17.5实验步骤230


17.5.1Phong双线性法矢插值模型230


17.5.2修改CAET类231


17.5.3修改CZBuffer类231


17.5.4光照环境初始化240


17.5.5绘制球面函数241


17.5.6写出实验报告242


17.6思考与练习242实验18立方体纹理映射245


18.1实验目的245


18.2实验要求245


18.3效果图245


18.4实验准备246


18.5实验步骤246


18.5.1定义CFacet类246


18.5.2读入位图纹理247


18.5.3定义面表248


18.5.4绘制立方体250


18.5.5填充立方体表面250


18.5.6写出实验报告253


18.6思考与练习253第二部分课 程 设 计课程设计任务书259课程设计Ⅰ基本图元光栅扫描演示系统261


Ⅰ.1设计目标261


Ⅰ.2设计效果261


Ⅰ.3总体设计263


Ⅰ.4类的设计264


Ⅰ.5视图的设计281


Ⅰ.6结论293课程设计Ⅱ递归动态球体演示系统294


Ⅱ.1设计目标294


Ⅱ.2设计效果294


Ⅱ.3总体设计296


Ⅱ.4类的设计297


Ⅱ.5视图的设计300


Ⅱ.6结论309课程设计Ⅲ圆环动态纹理演示系统311


Ⅲ.1设计目标311


Ⅲ.2设计效果311


Ⅲ.3总体设计313


Ⅲ.4类的设计317


Ⅲ.5视图的设计337


Ⅲ.6结论346课程设计Ⅳ动态光源演示系统348


Ⅳ.1设计目标348


Ⅳ.2设计效果348


Ⅳ.3总体设计350


Ⅳ.4类的设计350


Ⅳ.5视图的设计356


Ⅳ.6结论360课程设计Ⅴ3DS接口演示系统361


Ⅴ.1设计目标361


Ⅴ.2设计效果362


Ⅴ.3总体设计362


Ⅴ.4类的设计364


Ⅴ.5视图的设计372


Ⅴ.6结论376参考文献378



内容摘要
本书是与《计算机图形学基础教程(Visual C  版)(第2版)》(ISBN 9787302297529)配套的实验教材,提供了18个综合性教学实验和5个课程设计项目,可以满足计算机图形学课堂上机实验和设计周课程设计任务。实验项目编排由浅入深,通过定义基础类、直线类、变换类、填充类、光照类,*终构造了三维动态光照场景。本书的全部内容都基于MFC框架完成,彩插中展示的所有图形均使用CDC类的SetPixel()成员函数绘制,未包含任何图形学库。教学实验和课程设计项目的开发过程按照OpenGL的操作流程编写,易于引导读者从图形学的原理领域进入应用领域。 
本书的教学实验和课程设计项目的源代码和实验拓展项目的可执行文件全部提供在笔者的个人网站(http://www.klingde.com/)上,请读者下载后参照源代码学习。通读本书,读者可以轻松掌握多面体、球体、圆环等三维物体线框模型的建模方法。在三维动态光照场景中,可以调整物体表面模型的材质属性、添加纹理细节,改变视点和光源的位置,完成三维真实感图形的动态绘制。
本书内容全面、案例丰富、注重理实一体化,适合作为本科计算机图形学的实验和课程设计教材。本书为源代码提供了详尽的注释,可供计算机图形学爱好者从编程的角度理解和掌握计算机图形学原理。

主编推荐
本教材是国内非常有影响力的图形学教材的第2版,书中案例全部用Visual C  的MFC框架实现。书中彩插展示了案例*终效果。相关资源提供网站下载。

精彩内容
实验5直线段裁剪[1]5.1实验目的掌握CohenSutherland直线段裁剪算法。
5.2实验要求
(1) 定义二维坐标系原点位于屏幕中心,x轴水平向右为正,y轴垂直向上为正。
(2) 在客户区中央固定绘制颜色为RGB(128,0,0)的3像素宽的矩形代表裁剪窗口。裁剪窗口的左上角点为(-300,100),右下角点为(300,-100)。(3) 使用鼠标在屏幕上动态绘制任意直线段。
(4) 选择裁剪按钮根据直线段和窗口的相对位置,对直线段进行裁剪,得到位于窗口内的直线段,删除窗口外的直线段。
(5) 直线段绘制之前,裁剪按钮无效;直线段绘制之后,裁剪按钮有效。
5.3效果图直线段裁剪前效果如图51所示,直线段裁剪后效果如图52所示。图51直线段裁剪前效果图 图52直线段裁剪后效果图5.4实验准备(1) 在学习完主教材5.5节后,进行本实验。
(2) 熟悉掌握区域编码规则。
(3) 熟悉“简取”“简弃”和“求交”的判断条件。
(4) 熟悉窗口边界(或其延长线)与直线段交点坐标的计算公式。5.5实验步骤本实验首先修改CP2类,绑定直线段顶点及其编码,然后使用双缓冲绘制动态直线,调用Dan Cohen和Ivan Sutherland所提出的CohenSutherland直线段裁剪算法,根据窗口和直线段的相对位置对直线段进行裁剪。


—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP