新書推薦:
《
快人一步:系统性能提高之道
》
售價:HK$
110.9
《
我们为什么会做梦:让梦不再神秘的新科学
》
售價:HK$
77.3
《
算法图解(第2版)
》
售價:HK$
78.2
《
科学的奇幻之旅
》
售價:HK$
77.3
《
画艺循谱:晚明的画谱与消闲
》
售價:HK$
143.4
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:HK$
99.7
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:HK$
44.6
《
甲骨拼合六集
》
售價:HK$
333.8
|
編輯推薦: |
《计算机图形学(微课版)》从基本概念入手,理论与实践相结合,内容系统、完整,可操作性强。全书采用基础教学模式及微课视频辅助学习,对重点和难点算法给出了源程序,而且每章配有习题,便于读者复习和实践。
|
內容簡介: |
计算机图形学是在计算机领域中飞速发展并得到广泛应用的学科,其主要研究与计算机图形显示相关的原理、算法及程序设计,旨在更好地利用计算机生成、显示及处理图形。 《计算机图形学(微课版)》主要介绍计算机图形技术的原理及应用,对计算机图形学的基本概念、二维和三维图形的生成及变换、图形的裁剪、真实感图形的生成技术等有关知识做了详细而系统的论述,并结合具体实例详细介绍了基于OpenGL环境以及基于虚拟现实建模语言VRML的图形系统开发。 《计算机图形学(微课版)》可作为高等院校本科生、研究生学习计算机图形学的教材使用,也可作为从事CAD和计算机图形学技术研究的广大科技人员的参考用书。
|
關於作者: |
贾浩梅,唐山师范学院计算机科学系教师。2017年毕业于英国拉夫堡大学高级计算机科学专业,获理学硕士学位,研究生期间从事图形图像处理、计算机视觉、模式识别及计算机图形学方面的研究,曾在国内外重要期刊上发表论文数篇。任教期间作为助教协助系主任进行计算机图形教研室的建立及管理工作,同时为《计算机图形学》主讲教师。
|
目錄:
|
第1章 绪论 1
1.1 计算机图形学的研究内容 2
1.2 计算机图形学的发展简史 2
1.3 计算机图形技术的应用 4
1.4 计算机图形系统 8
1.4.1 计算机图形系统概述 8
1.4.2 常用的图形输入设备 10
1.4.3 常用的图形输出设备 13
1.4.4 计算机图形系统软件 23
1.4.5 计算机图形标准 24
1.5 计算机图形学的发展动向 25
1.6 计算机图形学与相关学科的关系 26
课后习题 27
第2章 二维图形生成技术 29
2.1 直线的生成 30
2.1.1 直接生成法 30
2.1.2 数值微分法 31
2.1.3 中点画线算法 33
2.1.4 Bresenham画线算法 34
2.1.5 双步画线算法 36
2.2 圆的生成 37
2.2.1 圆的八点对称 38
2.2.2 Bresenham画圆算法 38
2.2.3 中点画圆算法 40
2.2.4 正负法画圆 43
2.3 椭圆的生成 44
2.4 曲面与曲线 44
2.4.1 曲线和曲面表示的基础知识 44
2.4.2 Hermite多项式 47
2.4.3 Coons曲面 48
2.5 输出图元的属性 49
2.5.1 线宽控制 49
2.5.2 线型控制 50
2.6 字符的生成 51
2.6.1 字符形状表示 52
2.6.2 字符属性 53
课后习题 53
第3章 二维实面积图形的生成 55
3.1 矩形填充 56
3.2 区域填充 57
3.2.1 多边形的扫描转换算法 57
3.2.2 边填充算法 67
3.2.3 种子填充算法 75
3.3 图案填充 81
3.3.1 使用扫描转换的图案填充 81
3.3.2 不用扫描转换的图案填充 83
课后习题 84
第4章 二维图形变换 85
4.1 数学基础 86
4.1.1 向量及其性质 86
4.1.2 向量点积 87
4.1.3 矩阵 87
4.1.4 矩阵乘法 87
4.1.5 矩阵的转置 88
4.1.6 矩阵的逆 88
4.1.7 齐次坐标 88
4.2 基本变换 89
4.2.1 平移变换 89
4.2.2 比例变换 90
4.2.3 旋转变换 91
4.2.4 对称变换与错切变换 92
4.3 组合变换 94
4.3.1 单一基本变换的组合变换 94
4.3.2 多个基本变换的组合变换 95
4.3.3 组合变换举例 97
课后习题 98
第5章 二维图形的裁剪 99
5.1 图形的开窗 100
5.1.1 计算机图形学中常用的
坐标系 100
5.1.2 窗口与视区的坐标变换 100
5.2 线段裁剪算法 103
5.2.1 裁剪端点 103
5.2.2 利用求解联立方程组的线段
裁剪 103
5.2.3 Cohen-Sutherland 线段裁剪 105
5.2.4 参数化的线段裁剪 108
5.3 多边形裁剪算法 109
5.3.1 Sutherland-Hodgman 算法 109
5.3.2 Weiler-Atherton 算法 112
5.4 圆的裁剪 123
5.5 文本裁剪算法 124
5.5.1 字符串裁剪 124
5.5.2 字符裁剪 124
5.5.3 笔画裁剪 125
5.6 二维图形的输出流程 125
课后习题 125
第6章 三维图形学基础 127
6.1 三维图形的几何变换 128
6.1.1 三维坐标系的建立 128
6.1.2 三维图形几何变换 128
6.1.3 三维坐标系变换 134
6.2 三维图形的投影 135
6.2.1 投影与投影变换的定义 135
6.2.2 平面几何投影的分类 136
6.2.3 透视投影 136
6.2.4 平行投影 138
6.3 裁剪 141
6.3.1 直线段裁剪算法 142
6.3.2 其他图形的裁剪 144
6.3.3 三维图形的裁剪 146
6.4 三维图形的输出流程 147
课后习题 147
第7章 三维物体的表示 149
7.1 平面物体的表示 150
7.1.1 多边形表 150
7.1.2 平面方程 151
7.1.3 多边形网格 153
7.2 二次曲面 154
7.2.1 球面 154
7.2.2 椭球面 155
7.2.3 环面 155
7.3 孔斯(Coons)曲面 156
7.3.1 第一类Coons曲面 156
7.3.2 第二类Coons曲面 158
7.4 贝塞尔(Bezier)曲面 159
7.4.1 Bezier曲面的定义 159
7.4.2 Bezier曲面的性质 160
7.5 B样条曲面 161
课后习题 163
第8章 真实感图显技术 165
8.1 颜色模型 166
8.1.1 RGB颜色模型 166
8.1.2 CMY颜色模型 167
8.1.3 HSV颜色模型 167
8.2 光照模型 169
8.2.1 环境光 170
8.2.2 漫反射 171
8.2.3 镜面反射 171
8.2.4 点光源与柱光源(锥光源) 172
8.3 阴影的生成 172
8.3.1 扫描线阴影生成算法 173
8.3.2 阴影体 174
8.4 纹理映射 175
8.4.1 定义纹理 175
8.4.2 颜色和几何纹理 175
8.5 透明性 175
8.5.1 无折射的透明 176
8.5.2 折射透明性 176
8.6 隐藏线的消除 178
8.6.1 凸多面体隐藏线的消除 178
8.6.2 凹多面体隐藏线的消除 179
8.7 隐藏面的消除 179
8.7.1 画家算法 180
8.7.2 深度缓冲器算法
(z—缓冲器算法) 181
8.7.3 扫描线算法 182
8.7.4 区域细分算法 184
课后习题 185
第9章 OpenGL设计基础 187
9.1 概述 188
9.2 OpenGL应用程序的工作过程 189
9.3 OpenGL的主要功能 191
9.4 OpenGL的基本语法规则 192
9.4.1 OpenGL的数据类型 192
9.4.2 OpenGL的函数约定 193
9.5 OpenGL基本图元绘制 193
9.5.1 点 194
9.5.2 线 194
9.5.3 多边形 196
9.5.4 字符 197
9.6 OpenGL图形的几何变换 197
9.6.1 矩阵操作函数 197
9.6.2 几何变换 198
9.6.3 OpenGL视区变换 199
9.7 OpenGL对交互式绘图的支持 200
9.7.1 OpenGL的选择模式 200
9.7.2 OpenGL的反馈模式 202
9.8 OpenGL观察流程和函数 203
9.8.1 常用的变换函数 203
9.8.2 模视变换 204
9.8.3 投影变换 206
9.8.4 视区变换 208
9.8.5 附加裁剪面 208
9.9 OpenGL中自由曲线和曲面的
绘制 209
9.9.1 Bezier曲线的绘制 209
9.9.2 Bezier曲面的绘制 211
9.9.3 NURBS曲线的绘制 211
9.9.4 NURBS曲面的绘制 213
9.10 OpenGL中多边形的消除与消隐 214
9.11 OpenGL的真实感图形绘制 215
9.11.1 OpenGL颜色 215
9.11.2 OpenGL光照 215
9.11.3 OpenGL明暗处理 216
9.11.4 OpenGL纹理映射 216
9.12 OpenGL图形演示系统的设计 219
9.12.1 位图数据的处理 220
9.12.2 模型的绘制 224
课后习题 228
第10章 VRML环境下图形系统的
设计 229
10.1 虚拟现实简介 230
10.2 VRML的基本语法 231
10.2.1 VRML的通用语法结构 231
10.2.2 VRML的基本概念 231
10.2.3 VRML空间计量单位 232
10.2.4 VRML的节点简介 233
10.2.5 域 234
10.3 在场景中添加几何体 236
10.3.1 Shape节点对几何体的
封装 236
10.3.2 添加长方体 236
10.3.3 添加球体 237
10.3.4 添加圆柱体 238
10.3.5 添加圆锥体 239
10.3.6 添加文本 239
10.4 几何体的几何变换 241
10.4.1 理解VRML空间 241
10.4.2 Transform节点的语法 242
10.4.3 平移几何体 243
10.4.4 旋转几何体 244
10.4.5 缩放几何体 245
10.5 真实感场景创建 247
10.5.1 光照 247
10.5.2 纹理 251
10.5.3 雾化 253
10.6 VRML虚拟漫游系统的设计 255
10.6.1 物体模型的设计 255
10.6.2 漫游场景的最终生成 258
课后习题 260
参考文献 261
|
內容試閱:
|
21世纪是经济全球化、信息社会化、产业知识化、市场开放化高速发展的新时代。伴随着微电子和计算机科学技术日益渗透到经济、生活、学习、工作以及生产加工等社会活动的各个领域,人类正迈步跨进一个全新的知识经济时代。在实际工作环境中,计算机图形的应用范围非常广泛,相关知识的更新、发展也非常快,及时学习和掌握新的研究成果以及提高实际应用能力,将为以后的工作与研究奠定基础。
本书面向21世纪计算机专业学生,主要介绍计算机图形学的原理、算法及实现,参考和总结计算机图形学近年来的新成果,力图全面、准确地介绍这些内容,循序渐进,深入浅出,由二维到三维。读者可以通过书中的程序实例上机验证算法,方便更加深入地了解并掌握基础知识。
本书共10章,具体内容如下。
第1章介绍计算机图形的基本概论,包括计算机图形学的基本研究内容、发展简史、基本应用、计算机图形系统、发展动向以及与相关学科的关系。
第2章介绍二维图形生成技术,包括直线的生成、圆的生成、椭圆的生成、曲线与曲面、图元属性、字符的生成等内容。
第3章介绍二维实面积图形的生成,包括矩形填充、区域填充和图案填充。
第4章介绍二维图形变换,包括变换所需的数学基础、基本变换及组合变换等内容。
第5章介绍二维图形的裁剪,包括图形的开窗、线段裁剪算法、多边形裁剪算法、圆的裁剪、文本裁剪算法以及二维图形的输出流程。
第6章介绍三维图形学基础,包括三维图形的几何变换、三维图形的投影、裁剪以及三维图形的输出流程。
第7章介绍三维物体的表示,包括平面物体的表示、二次曲面、孔斯曲面、贝塞尔曲面和样条曲面。
第8章介绍真实感图显技术,包括颜色模型、光照模型、阴影的生成、纹理映射、透明性、隐藏线的消除、隐藏面的消除等内容。
第9章介绍OpenGL设计基础,包括OpenGL应用程序的工作过程、主要功能、基本语法规则、基本图元绘制、几何变换、交互式绘图、观察流程及函数、曲线及曲面绘制、真实感图形绘制等内容。
第10章介绍VRML环境下图形系统的设计,包括VRML基本语法、几何体添加、几何变换、真实感场景创建、VRML虚拟漫游系统的设计等内容。
本书从基本概念入手,理论与实践相结合,内容系统、完整,可操作性强,对重点和难点算法给出了源程序,而且每章配有习题,便于读者复习和实践。本书中部分案例附配源代码与章后习题答案,读者可通过扫描下方的二维码进行下载。
扫码下载源代码 ? 扫码下载习题答案
本书由唐山师范学院贾浩梅主编。由于编者水平和能力有限,书中可能存在不足之处,衷心希望读者给予批评和指正。
编 者
|
|