商品详情
书名:计算机图形学——理论与实践项目化教程
定价:59.8
ISBN:9787121385339
作者:孔令德
版次:第1版
出版时间:2020-06
内容提要:
本书以真实感图形为主线,精选23个理论知识点进行重点讲解,并给出23个配套实验,以三维动画的方式讲解3D计算机图形学的基础理论与算法。理论部分主要包括双缓冲动画、直线光栅化、三维几何变换、曲面建模、透视投影、三角形填充、深度缓冲消隐、简单光照模型和纹理映射等内容;实验部分主要提供三角形填充算法、立方体等多面体建模算法、球体和圆环曲面体建模算法、球体的透视投影算法、立方体的ZBuffer消隐算法和画家消隐算法、球体的高洛德明暗处理算法、圆环的冯氏明暗处理算法、球体的图像纹理映射算法和凹凸纹理映射算法等项目。实验项目使用Visual C++ 2017的中文版MFC框架开发,提供一套完整的三维场景着色源程序代码。实验项目还提供严格按照算法编写的工具代码,包括直线类CLine、几何变换类CTransform、投影类CProjection、深度缓冲消隐类CZBuffer、光源类CLightSource、材质类CMaterial、光照类CLighting、高洛德着色器GouruaudShader和冯氏着色器PhongShader。
作者简介:
孔令德, 山西太原工业学院计算机系系主任, 二级教授, 山西省杰出教学人才, 长期从事计算机科学与技术的教学与研究工作, 出版教材和专著多部, 发表论文多篇.
目录:
第1章 概述 1
1.1 计算机图形学的概念 1
1.2 计算机图形学的应用领域 1
1.2.1 计算机辅助设计 2
1.2.2 计算机艺术 2
1.2.3 虚拟现实技术 2
1.2.4 计算机游戏 3
1.2.5 计算机辅助教学 3
1.3 计算机图形学的诞生 3
1.4 真实感图形算法的进展 4
1.5 MFC绘图函数【理论1】 4
1.5.1 新建Test项目 4
1.5.2 自定义坐标系 6
1.5.3 绘图工具 7
1.5.4 基本绘图函数 8
1.6 实验1:鼠标绘制直线 9
1.7 双缓冲绘图算法【理论2】 11
1.8 实验2:小球与客户区边界碰撞动画 12
1.9 本章小结 17
习题1 18
第2章 直线的光栅化 19
2.1 确定主位移方向 19
2.2 DDA算法 20
2.3 Bresenham算法 21
2.3.1 Bresenham算法原理 21
2.3.2 整数Bresenham算法原理 22
2.3.3 通用整数Bresenham算法原理
【理论3】 22
2.3.4 颜色线性插值 23
2.4 实验3:使用Bresenham直线算法绘制颜色渐变三角形 23
2.5 中点算法 28
2.5.1 中点算法原理 28
2.5.2 构造中点误差项 29
2.5.3 递推公式 29
2.5.4 中点算法整数化 30
2.6 反走样技术【理论4】 31
2.6.1 走样现象 31
2.6.2 算法原理 31
2.6.3 构造距离误差项 32
2.6.4 反走样算法 32
2.7 实验4:反走样秒表 33
2.8 本章小结 35
习题2 36
第3章 几何变换 37
3.1 齐次坐标 37
3.2 二维几何变换【理论5】 38
3.2.1 二维几何变换矩阵 38
3.2.2 二维变换形式 38
3.2.3 基本几何变换矩阵 38
3.2.4 二维复合变换 43
3.3 实验5:绘制防护栏图案 43
3.4 三维变换 50
3.4.1 三维变换矩阵 50
3.4.2 三维变换形式 50
3.5 三维基本变换矩阵【理论6】 51
3.5.1 基本几何变换矩阵 51
3.5.2 三维复合变换 55
3.6 实验6:旋转立方体 56
3.7 本章小结 65
习题3 65
第4章 自由曲面建模 67
4.1 贝塞尔曲线【理论7】 67
4.1.1 贝塞尔曲线的定义 67
4.1.2 三次贝塞尔曲线绘制圆弧 70
4.1.3 贝塞尔曲线的拼接 71
4.2 实验7:使用三次贝塞尔曲线绘制圆 71
4.3 贝塞尔曲面【理论8】 75
4.3.1 双三次贝塞尔曲面的定义 76
4.3.2 双三次贝塞尔曲面递归细分 77
4.3.3 双三次贝塞尔曲面的法向量 78
4.4 实验8:回转法构造球面 78
4.5 本章小结 90
习题4 91
第5章 投影与消隐 95
5.1 正交投影 95
5.2 斜投影【理论9】 96
5.3 实验9:绘制斜投影双三次贝塞尔曲面 97
5.4 透视投影【理论10】 100
5.4.1 透视投影坐标系 100
5.4.2 世界坐标系到观察坐标系的变换 101
5.4.3 观察坐标系到屏幕坐标系的变换 101
5.4.4 透视投影变换 102
5.4.5 透视投影分类 103
5.5 实验10:制作球体的透视投影动画 103
5.6 背面剔除算法【理论11】 106
5.7 实验11:制作球体的消隐动画 107
5.8 本章小结 111
习题5 111
第6章 表面模型 114
6.1 三角形的表示法 114
6.2 三角形的着色模式 115
6.3 马赫带 115
6.4 边界像素处理规则 116
6.5 边标志算法【理论12】 116
6.5.1 基本思想 116
6.5.2 光滑着色模式填充三角形 117
6.5.3 打边标志 117
6.6 实验12:绘制RGB立方体 118
6.7 面消隐算法 124
6.7.1 三维屏幕坐标系 124
6.7.2 计算伪深度 125
6.8 ZBuffer算法【理论13】 125
6.9 实验13:光滑着色交叉条动态消隐 126
6.10 画家算法【理论14】 133
6.11 实验14:使用画家算法绘制CMY立方体
134
6.12 本章小结 138
习题6 138
第7章 光照模型 140
7.1 颜色模型 140
7.1.1 RGB颜色模型 140
7.1.2 HSV颜色模型 141
7.1.3 CMY颜色模型 142
7.2 简单光照模型【理论15】 143
7.2.1 材质属性 144
7.2.2 发射光模型 144
7.2.3 环境光模型 145
7.2.4 漫反射光模型 145
7.2.5 镜面反射光模型 146
7.2.6 光源衰减 147
7.2.7 增加颜色 148
7.3 实验15:球体GouraudShader三维动画 149
7.4 光滑着色【理论16】 155
7.4.1 GouraudShader 155
7.4.2 PhongShader 156
7.5 实验16:圆环PhongShader三维动画 157
7.6 本章小结 164
习题7 164
第8章 纹理映射 169
8.1 纹理的定义 170
8.2 纹理的分类 170
8.3 图像纹理【理论17】 171
8.3.1 读入纹理 171
8.3.2 处理高光 171
8.4 实验17:球体图像纹理映射 172
8.5 几何纹理【理论18】 179
8.5.1 *简单的凹凸图 179
8.5.2 映射原理 179
8.6 实验18:球体正弦函数扰动的凹凸纹理 181
8.7 纹理反走样 182
8.8 本章小结 183
习题8 183
第9章 高级纹理技术 188
9.1 两步纹理映射【理论19】 188
9.2 实验19:球面两步纹理映射算法 190
9.2 环境映射 192
9.2.1 球面映射方法【理论20】 192
9.2.2 立方体映射方法【理论21】 193
9.3 实验20:球面环境映射算法(球映射方法) 195
9.4 实验21:圆环环境映射算法(立方体映射方法) 196
9.5 投影纹理映射【理论22】 200
9.6 实验22:圆环投影纹理映射 201
9.7 三维纹理映射【理论23】 203
9.8 实验23:木纹球体 206
9.9 Mipmap纹理反走样技术 208
9.10 本章小结 210
习题9 210
附录A 课程设计 213
A.1 项目描述 213
A.2 项目设计 214
A.3 项目编码 217
A.4 项目总结 222
A.5 项目拓展 222
参考文献 227
定价:59.8
ISBN:9787121385339
作者:孔令德
版次:第1版
出版时间:2020-06
内容提要:
本书以真实感图形为主线,精选23个理论知识点进行重点讲解,并给出23个配套实验,以三维动画的方式讲解3D计算机图形学的基础理论与算法。理论部分主要包括双缓冲动画、直线光栅化、三维几何变换、曲面建模、透视投影、三角形填充、深度缓冲消隐、简单光照模型和纹理映射等内容;实验部分主要提供三角形填充算法、立方体等多面体建模算法、球体和圆环曲面体建模算法、球体的透视投影算法、立方体的ZBuffer消隐算法和画家消隐算法、球体的高洛德明暗处理算法、圆环的冯氏明暗处理算法、球体的图像纹理映射算法和凹凸纹理映射算法等项目。实验项目使用Visual C++ 2017的中文版MFC框架开发,提供一套完整的三维场景着色源程序代码。实验项目还提供严格按照算法编写的工具代码,包括直线类CLine、几何变换类CTransform、投影类CProjection、深度缓冲消隐类CZBuffer、光源类CLightSource、材质类CMaterial、光照类CLighting、高洛德着色器GouruaudShader和冯氏着色器PhongShader。
作者简介:
孔令德, 山西太原工业学院计算机系系主任, 二级教授, 山西省杰出教学人才, 长期从事计算机科学与技术的教学与研究工作, 出版教材和专著多部, 发表论文多篇.
目录:
第1章 概述 1
1.1 计算机图形学的概念 1
1.2 计算机图形学的应用领域 1
1.2.1 计算机辅助设计 2
1.2.2 计算机艺术 2
1.2.3 虚拟现实技术 2
1.2.4 计算机游戏 3
1.2.5 计算机辅助教学 3
1.3 计算机图形学的诞生 3
1.4 真实感图形算法的进展 4
1.5 MFC绘图函数【理论1】 4
1.5.1 新建Test项目 4
1.5.2 自定义坐标系 6
1.5.3 绘图工具 7
1.5.4 基本绘图函数 8
1.6 实验1:鼠标绘制直线 9
1.7 双缓冲绘图算法【理论2】 11
1.8 实验2:小球与客户区边界碰撞动画 12
1.9 本章小结 17
习题1 18
第2章 直线的光栅化 19
2.1 确定主位移方向 19
2.2 DDA算法 20
2.3 Bresenham算法 21
2.3.1 Bresenham算法原理 21
2.3.2 整数Bresenham算法原理 22
2.3.3 通用整数Bresenham算法原理
【理论3】 22
2.3.4 颜色线性插值 23
2.4 实验3:使用Bresenham直线算法绘制颜色渐变三角形 23
2.5 中点算法 28
2.5.1 中点算法原理 28
2.5.2 构造中点误差项 29
2.5.3 递推公式 29
2.5.4 中点算法整数化 30
2.6 反走样技术【理论4】 31
2.6.1 走样现象 31
2.6.2 算法原理 31
2.6.3 构造距离误差项 32
2.6.4 反走样算法 32
2.7 实验4:反走样秒表 33
2.8 本章小结 35
习题2 36
第3章 几何变换 37
3.1 齐次坐标 37
3.2 二维几何变换【理论5】 38
3.2.1 二维几何变换矩阵 38
3.2.2 二维变换形式 38
3.2.3 基本几何变换矩阵 38
3.2.4 二维复合变换 43
3.3 实验5:绘制防护栏图案 43
3.4 三维变换 50
3.4.1 三维变换矩阵 50
3.4.2 三维变换形式 50
3.5 三维基本变换矩阵【理论6】 51
3.5.1 基本几何变换矩阵 51
3.5.2 三维复合变换 55
3.6 实验6:旋转立方体 56
3.7 本章小结 65
习题3 65
第4章 自由曲面建模 67
4.1 贝塞尔曲线【理论7】 67
4.1.1 贝塞尔曲线的定义 67
4.1.2 三次贝塞尔曲线绘制圆弧 70
4.1.3 贝塞尔曲线的拼接 71
4.2 实验7:使用三次贝塞尔曲线绘制圆 71
4.3 贝塞尔曲面【理论8】 75
4.3.1 双三次贝塞尔曲面的定义 76
4.3.2 双三次贝塞尔曲面递归细分 77
4.3.3 双三次贝塞尔曲面的法向量 78
4.4 实验8:回转法构造球面 78
4.5 本章小结 90
习题4 91
第5章 投影与消隐 95
5.1 正交投影 95
5.2 斜投影【理论9】 96
5.3 实验9:绘制斜投影双三次贝塞尔曲面 97
5.4 透视投影【理论10】 100
5.4.1 透视投影坐标系 100
5.4.2 世界坐标系到观察坐标系的变换 101
5.4.3 观察坐标系到屏幕坐标系的变换 101
5.4.4 透视投影变换 102
5.4.5 透视投影分类 103
5.5 实验10:制作球体的透视投影动画 103
5.6 背面剔除算法【理论11】 106
5.7 实验11:制作球体的消隐动画 107
5.8 本章小结 111
习题5 111
第6章 表面模型 114
6.1 三角形的表示法 114
6.2 三角形的着色模式 115
6.3 马赫带 115
6.4 边界像素处理规则 116
6.5 边标志算法【理论12】 116
6.5.1 基本思想 116
6.5.2 光滑着色模式填充三角形 117
6.5.3 打边标志 117
6.6 实验12:绘制RGB立方体 118
6.7 面消隐算法 124
6.7.1 三维屏幕坐标系 124
6.7.2 计算伪深度 125
6.8 ZBuffer算法【理论13】 125
6.9 实验13:光滑着色交叉条动态消隐 126
6.10 画家算法【理论14】 133
6.11 实验14:使用画家算法绘制CMY立方体
134
6.12 本章小结 138
习题6 138
第7章 光照模型 140
7.1 颜色模型 140
7.1.1 RGB颜色模型 140
7.1.2 HSV颜色模型 141
7.1.3 CMY颜色模型 142
7.2 简单光照模型【理论15】 143
7.2.1 材质属性 144
7.2.2 发射光模型 144
7.2.3 环境光模型 145
7.2.4 漫反射光模型 145
7.2.5 镜面反射光模型 146
7.2.6 光源衰减 147
7.2.7 增加颜色 148
7.3 实验15:球体GouraudShader三维动画 149
7.4 光滑着色【理论16】 155
7.4.1 GouraudShader 155
7.4.2 PhongShader 156
7.5 实验16:圆环PhongShader三维动画 157
7.6 本章小结 164
习题7 164
第8章 纹理映射 169
8.1 纹理的定义 170
8.2 纹理的分类 170
8.3 图像纹理【理论17】 171
8.3.1 读入纹理 171
8.3.2 处理高光 171
8.4 实验17:球体图像纹理映射 172
8.5 几何纹理【理论18】 179
8.5.1 *简单的凹凸图 179
8.5.2 映射原理 179
8.6 实验18:球体正弦函数扰动的凹凸纹理 181
8.7 纹理反走样 182
8.8 本章小结 183
习题8 183
第9章 高级纹理技术 188
9.1 两步纹理映射【理论19】 188
9.2 实验19:球面两步纹理映射算法 190
9.2 环境映射 192
9.2.1 球面映射方法【理论20】 192
9.2.2 立方体映射方法【理论21】 193
9.3 实验20:球面环境映射算法(球映射方法) 195
9.4 实验21:圆环环境映射算法(立方体映射方法) 196
9.5 投影纹理映射【理论22】 200
9.6 实验22:圆环投影纹理映射 201
9.7 三维纹理映射【理论23】 203
9.8 实验23:木纹球体 206
9.9 Mipmap纹理反走样技术 208
9.10 本章小结 210
习题9 210
附录A 课程设计 213
A.1 项目描述 213
A.2 项目设计 214
A.3 项目编码 217
A.4 项目总结 222
A.5 项目拓展 222
参考文献 227
- 电子工业出版社有限公司
- 电子工业出版社有限公司有赞官方供货商,为客户提供一流的知识产品及服务。
- 扫描二维码,访问我们的微信店铺