计算机图形学原理及实践——C语言描述(原书第2版)
[绝版]基本信息
- 作者: (美)James D.Foley,Andries Van Dam,Steven K.Feiner,John F.Hughes [作译者介绍]
- 译者: 唐泽圣 董士海 李华 吴恩华 汪国平
- 丛书名: 计算机科学丛书
- 出版社:机械工业出版社
- ISBN:711113026X
- 上架时间:2004-3-29
- 出版日期:2004 年3月
- 开本:16开
- 页码:857
- 版次:2-1
- 所属分类:
计算机 > 计算机科学理论与基础知识 > 图形学
计算机 > 软件与程序设计 > C/Turbo C > C
教材 > 研究生/本科/专科教材 > 工学 > 计算机
教材 > 计算机教材 > 高职高专 > 计算机辅助设计
教材 > 计算机教材 > 本科/研究生 > 计算机专业教材 > 计算机专业课程 > 图形图象与网页设计
内容简介回到顶部↑
本书是计算机图形学领域的经典著作。本书由基础知识、用户界面、模型定义和图像合成四个部分组成,包括srgp的编程、画二维图元的基本光栅图形学算法、图形硬件、几何变换、三维空间的观察、对象的层次结构和sphigs系统、输入设备、交互技术与交互任务、对话设计、用户界面软件、实体造型、消色光与彩色光、可视图像的真实性、可见面判定、光照模型与光照计算、图像处理与存储、高级光栅图形体系结构、高级几何与光栅算法、高级建模技术和动画等内容。
本书内容全面,涉及图形学的各个领域,可以作为计算机专业本科生和研究生的教材,同时也可供相关技术人员阅读。 这是计算机图形学领域的一部经典之作,作者foley、van dam等是国际图形学界的著名学者、学术带头人,而且本书英文版自出版以来,一直是各国大学计算机图形学课程的主要教科书。来自清华大学、北京大学、中国科学院计算技术研究所、中国科学院软件研究所的多位图形学领域的专家和精英花费了大量的时间和精力进行翻译,最终完成了这本中文版。
本书由基础知识、用户界面、模型定义和图像合成四个部分组成,内容覆盖了日趋成熟的计算机图形学领域各个方面,包括二维、三维图形学的数学基础,重要算法,光栅图形硬件和软件,交互技术及用户界面软件,真实感图形学,高级建模技术 (分形、体绘制等),图像处理和存储,以及动画等。此外,书中包括了大量习题和参考文献,提供了大量的用c语言编写的实现算法的程序。
本书是高等院校计算机专业本科生、研究生计算机图形学课程的理想教材,是相关领域专业人员开展研究工作的优秀参考书。
本书内容全面,涉及图形学的各个领域,可以作为计算机专业本科生和研究生的教材,同时也可供相关技术人员阅读。 这是计算机图形学领域的一部经典之作,作者foley、van dam等是国际图形学界的著名学者、学术带头人,而且本书英文版自出版以来,一直是各国大学计算机图形学课程的主要教科书。来自清华大学、北京大学、中国科学院计算技术研究所、中国科学院软件研究所的多位图形学领域的专家和精英花费了大量的时间和精力进行翻译,最终完成了这本中文版。
本书由基础知识、用户界面、模型定义和图像合成四个部分组成,内容覆盖了日趋成熟的计算机图形学领域各个方面,包括二维、三维图形学的数学基础,重要算法,光栅图形硬件和软件,交互技术及用户界面软件,真实感图形学,高级建模技术 (分形、体绘制等),图像处理和存储,以及动画等。此外,书中包括了大量习题和参考文献,提供了大量的用c语言编写的实现算法的程序。
本书是高等院校计算机专业本科生、研究生计算机图形学课程的理想教材,是相关领域专业人员开展研究工作的优秀参考书。
作译者回到顶部↑
本书提供作译者介绍
James D.Foley 于密歇根大学获得博士学位,是佐治亚理工学院教授,图形学、可视化及可用性研究中心创始人,现任该中心主任。他还是ACM、ACM SIGGRAPH、ACM SIGCH和IEEE的成员。
Andries van Dam于宾夕法尼亚大学获得博士学位,是布朗大学计算机科学系创始人之一,而且是该系的首任系主任,现为该系教授。他是IEEE计算机学会及ACM的成员,ACM SIGGRAPH的创始人之一。
Steven K.Feiner于布朗大学获得博士学位,是哥伦比亚大学计算机科学系教授,计算机图形学与用户界面实验室负责人。他也是ACM .. << 查看详细
Andries van Dam于宾夕法尼亚大学获得博士学位,是布朗大学计算机科学系创始人之一,而且是该系的首任系主任,现为该系教授。他是IEEE计算机学会及ACM的成员,ACM SIGGRAPH的创始人之一。
Steven K.Feiner于布朗大学获得博士学位,是哥伦比亚大学计算机科学系教授,计算机图形学与用户界面实验室负责人。他也是ACM .. << 查看详细
目录回到顶部↑
出版者的话
专家指导委员会
译者序
前言
第1章 导言 1
1.1 作为图像分析的图像处理 1
1.2 交互式图形学的优点 2
1.3 计算机图形学的典型用途 3
1.4 应用分类 4
1.5 计算机图形学硬件与软件的发展 5
1.5.1 输出技术 6
1.5.2 输入技术 10
1.5.3 软件的可移植性与图形标准 11
1.6 交互式图形学的概念框架 12
1.6.1 概述 12
1.6.2 应用建模 12
1.6.3 对图形系统描绘观察的内容 13
1.6.4 交互处理 14
1.7 小结 15
习题 15
专家指导委员会
译者序
前言
第1章 导言 1
1.1 作为图像分析的图像处理 1
1.2 交互式图形学的优点 2
1.3 计算机图形学的典型用途 3
1.4 应用分类 4
1.5 计算机图形学硬件与软件的发展 5
1.5.1 输出技术 6
1.5.2 输入技术 10
1.5.3 软件的可移植性与图形标准 11
1.6 交互式图形学的概念框架 12
1.6.1 概述 12
1.6.2 应用建模 12
1.6.3 对图形系统描绘观察的内容 13
1.6.4 交互处理 14
1.7 小结 15
习题 15
译者序回到顶部↑
译 者 序
计算机图形学已经成为信息技术(IT)产业非常重要的一个理论基础和专业领域。一本内容更新、材料丰富、阐述深入的计算机图形学著作(中文版),对IT迅速发展的我国是十分需要的。
本书的作者Foley、van Dam等是国际图形学界的著名学者、学术带头人。本书是计算机图形学领域的经典著作。从1982年第1版出版以来,它一直是各国大学“计算机图形学”课程的主要教科书。第1版的中译本对我国计算机图形学的教学科研已起了积极的作用,而本书的第2版C语言版本对第1版做了全面的更新,增加了大量新内容,覆盖了日趋成熟的计算机图形学领域的各个方面,包括二维、三维图形学的数学基础,大量重要算法,光栅图形硬件和软件,交互技术及用户界面软件,真实感图形学,高级建模技术(分形、体绘制等),图像处理和存储,动画等。它是图形应用的广大用户、软件开发人员和硬件设计人员的优秀自学参考书。
本书包括了大量习题和经典参考文献目录,提供了大量C语言的算法实现程序,是本科生、研究生学习相关课程和开展研究工作的优秀参考书和教材。
以上所述也正是本书20多位译者在非常繁忙的工作中花很大的精力翻译这本著作贡献给大学的原因。
参加本书翻译、审校修改工作的有以下同行:许忠信译前言、序言、彩图及第4章,柴建云译第1章,胡事民译第2、7章,王文成译第3章、附录,杜威译第5章,袁晓君译第6章,倪明田译第8、13、17章,汪国平译9、10、11、12、21章并审第16章,唐龙译第14章,刘列明译第15章,刘学慧译第16章,任继成译第18章,李桂清、王洪斌译第19章,李现民、石睿译第20章,唐泽圣审第1、2、4、7、14章,董士海审8~13、16、17、21章并译审彩图,李华审第5、6、18~20章,吴恩华审第3、15章及附录,齐东旭译审索引。
衷心感谢责任编辑杨海玲所做的大量细致的编辑加工工作。没有她的辛勤劳动,是不可能有本书现在的顺利出版的。我们还要感谢为本书翻译出版作出贡献的所有同事。
由于量大、译者多及水平有限,译文中欠妥和纰漏之处恐难避免,恳请读者不吝赐教和指正。
计算机图形学已经成为信息技术(IT)产业非常重要的一个理论基础和专业领域。一本内容更新、材料丰富、阐述深入的计算机图形学著作(中文版),对IT迅速发展的我国是十分需要的。
本书的作者Foley、van Dam等是国际图形学界的著名学者、学术带头人。本书是计算机图形学领域的经典著作。从1982年第1版出版以来,它一直是各国大学“计算机图形学”课程的主要教科书。第1版的中译本对我国计算机图形学的教学科研已起了积极的作用,而本书的第2版C语言版本对第1版做了全面的更新,增加了大量新内容,覆盖了日趋成熟的计算机图形学领域的各个方面,包括二维、三维图形学的数学基础,大量重要算法,光栅图形硬件和软件,交互技术及用户界面软件,真实感图形学,高级建模技术(分形、体绘制等),图像处理和存储,动画等。它是图形应用的广大用户、软件开发人员和硬件设计人员的优秀自学参考书。
本书包括了大量习题和经典参考文献目录,提供了大量C语言的算法实现程序,是本科生、研究生学习相关课程和开展研究工作的优秀参考书和教材。
以上所述也正是本书20多位译者在非常繁忙的工作中花很大的精力翻译这本著作贡献给大学的原因。
参加本书翻译、审校修改工作的有以下同行:许忠信译前言、序言、彩图及第4章,柴建云译第1章,胡事民译第2、7章,王文成译第3章、附录,杜威译第5章,袁晓君译第6章,倪明田译第8、13、17章,汪国平译9、10、11、12、21章并审第16章,唐龙译第14章,刘列明译第15章,刘学慧译第16章,任继成译第18章,李桂清、王洪斌译第19章,李现民、石睿译第20章,唐泽圣审第1、2、4、7、14章,董士海审8~13、16、17、21章并译审彩图,李华审第5、6、18~20章,吴恩华审第3、15章及附录,齐东旭译审索引。
衷心感谢责任编辑杨海玲所做的大量细致的编辑加工工作。没有她的辛勤劳动,是不可能有本书现在的顺利出版的。我们还要感谢为本书翻译出版作出贡献的所有同事。
由于量大、译者多及水平有限,译文中欠妥和纰漏之处恐难避免,恳请读者不吝赐教和指正。
前言回到顶部↑
前 言
交互式图形学的时代已经到来。就在不久以前这还是一项需要昂贵显示器硬件、大量计算机资源和独特软件的深奥的专业领域。然而在过去的几年中,随着硬件性能价格比的大幅提升(如配有标准图形终端的个人计算机)以及高端的与设备无关的图形程序包的开发,图形编程已经变得简捷、合理。交互式图形学如今已经可以为我们提供图形通信手段,并成为人机交互的主要工具。(节选自《交互式计算机图形学基础》的前言。Fundamentals of Interactive Computer Graphics, James Foley, Andries van Dam, l982)
这一断言在Apple公司的Macintosh机、IBM的PC机及其他类似产品引发计算机文化革命之前就做出了。现在,就算是没上学的孩子都对交互图形技术非常熟悉,比如窗口控制、用鼠标选取菜单和图标。图形用户界面可以使新手迅速变得老练,没有图形界面的计算机已经越来越罕见了。
随着交互式图形学在用户界面和数据可视化方面的广泛应用,三维物体的绘制技术也变得越来越真实,运用这些技术生成的广告片和电影特技无所不在。20世纪80年代初期尚处于实验阶段的技术目前已变得很普通,而更加令人叹为观止的“照片真实感”技术也马上就要到来。曾经需要花上几个小时才能生成一帧的伪真实感动画,如今在个人计算机上可以以10帧/秒以上的速度生成。1981年的“实时”矢量显示器可以显示没有经过隐藏线消除的几万个矢量组成的移动线框物体;而1990年的实时光栅显示器不仅可以显示同样的线框物体,而且可以显示由十万多个三角形面片组成的、采用Gourand或者Phong明暗处理以及完全的隐藏面消除的移动物体。这些高性能系统能提供实时的纹理映射、反走样、云雾和烟尘的大气衰减以及其他特殊效果。
图形软件的标准同样较第1版时明显进步了很多。第1版的SGP软件包基于的SIGGRAPH Core?9软件包、直视存储管和刷新矢量显示器现在基本上都已经消失了。支持结构层次存储和编辑的更加强大的PHIGS软件包已经成为ANSI和ISO的标准,广泛应用于科学和工程的实时几何图形制作中,与其相伴的PHIGS+支持光照、明暗处理、曲线和曲面。官方的图形标准中补充了许多事实标准,如Apple公司的QuickDraw,X Window的Xlib二维整型光栅图形包和Silicon Graphics公司的GL三维图形库。Pixar公司的照片真实感的RanderMan软件和硬拷贝页和屏幕图像描述的PostScript图形解释器同样也得到了广泛的应用。更好的图形软件的使用使得对用户界面的“感观”得到巨大改善,我们可以期待增加对三维效果的利用,使我们对信息的管理、表现、检索和漫游提供新的想像空间和形象,必是出于审美的考虑。
也许图形学中最重要的发展方向是对物体建模技术的愈加重视,不仅仅是生成这些物体的画面,同时人们对如何描述随时间变化的三维几何物体的几何特性和行为产生了更大的兴趣。这样,图形学在建模和绘制中就更加关注模拟、动画及“回归物理过程”,试图使创作出的物体尽可能真实。
当图形工具变得越来越复杂时,我们就需要能够有效地运用它们。绘制不再是瓶颈,所以研究人员开始尝试用人工智能技术帮助进行物体建模设计、运动规划、二维及三维物体的有效图形表示的布局。
当今图形学技术发展迅猛,任何一本参考书都必须不断进行更新和扩充才能跟上这样的发展。本书基本上对《交互式计算机图形学基础》做了总体重写,尽管页数几乎翻番,我们仍然不得不省略大量内容。
本书和第1版的主要区别如下:
?矢量图形学的定位由光栅图形学所代替。
?原来简单的二维浮点图形包(SGP)被SRGP和SPHIGS代替,体现了交互图形程序设计的两大主要流派。SRGP结合了QuickDraw和Xlib二维整型光栅图形包的特征;基于PHIGS的SPHIGS提供了具有层次显示列表的三维浮点包的基本特性。本书描述了如何应用这些标准图形包进行编程,并且同时讲述了这些图形包对于基本裁剪算法、扫描转换算法、观察算法和显示列表遍历算法等基本功能的实现细节。
?在更深的层次上讨论了用户界面问题,包括二维桌面比喻和三维交互设备。
?对建模的讨论包括了NURB(非均匀有理B样条)曲线和曲面,实体造型以及高级建模技术,如基于物理的建模、过程化模型、分形、L文法系统和粒子系统等。
?对绘制技术的讨论增加了对反走样的详细讨论,以及可见面判定、光照和明暗处理,包括基于物理的光照模型、光线跟踪、辐射度等。
?增加了高级光栅图形体系结构和算法的内容,包括裁剪、复杂图元的扫描转换、简单的图像处理操作等。
?增加了对动画的简单讨论。
阅读本书无须具备图形学的基础知识,只需要了解一定的C语言编程技术、基本的数据结构和算法、计算机体系结构和简单的线性代数。附录中列出了阅读本书必需的数学基础。本书的全部内容可在两个学期内讲授,但是书中内容划分为几个部分,也可以有选择地进行讲授。因此,读者可以根据自己的需要选择学习,由浅入深。本书可以大致分为下面几个部分:
基本知识
第1章对历史进行了简要回顾,并对硬件、软件、应用程序的最基本问题作了讨论。第2、3章讲述了简单的二维整型图形包SRGP的应用和实现方法。第4章介绍了图形硬件,包括如何应用硬件完成前面几章中提到的操作。第5、6章通过矩阵的方法介绍了在平面和三维空间中进行变换的思想,如何应用齐次坐标来统一线性变换和仿射变换,三维视图的描述,包括从任意视见体到标准视见体的变换。最后,第7章介绍了三维浮点层次图形包SPHIGS,通过一些基本的建模操作讲述了它的用法,SPHIGS是PHIGS标准的简化版本。这一章还讨论了PHIGS中可用的层次结构的优缺点以及使用这个图形软件包的应用程序的结构。
用户界面
交互式图形学的时代已经到来。就在不久以前这还是一项需要昂贵显示器硬件、大量计算机资源和独特软件的深奥的专业领域。然而在过去的几年中,随着硬件性能价格比的大幅提升(如配有标准图形终端的个人计算机)以及高端的与设备无关的图形程序包的开发,图形编程已经变得简捷、合理。交互式图形学如今已经可以为我们提供图形通信手段,并成为人机交互的主要工具。(节选自《交互式计算机图形学基础》的前言。Fundamentals of Interactive Computer Graphics, James Foley, Andries van Dam, l982)
这一断言在Apple公司的Macintosh机、IBM的PC机及其他类似产品引发计算机文化革命之前就做出了。现在,就算是没上学的孩子都对交互图形技术非常熟悉,比如窗口控制、用鼠标选取菜单和图标。图形用户界面可以使新手迅速变得老练,没有图形界面的计算机已经越来越罕见了。
随着交互式图形学在用户界面和数据可视化方面的广泛应用,三维物体的绘制技术也变得越来越真实,运用这些技术生成的广告片和电影特技无所不在。20世纪80年代初期尚处于实验阶段的技术目前已变得很普通,而更加令人叹为观止的“照片真实感”技术也马上就要到来。曾经需要花上几个小时才能生成一帧的伪真实感动画,如今在个人计算机上可以以10帧/秒以上的速度生成。1981年的“实时”矢量显示器可以显示没有经过隐藏线消除的几万个矢量组成的移动线框物体;而1990年的实时光栅显示器不仅可以显示同样的线框物体,而且可以显示由十万多个三角形面片组成的、采用Gourand或者Phong明暗处理以及完全的隐藏面消除的移动物体。这些高性能系统能提供实时的纹理映射、反走样、云雾和烟尘的大气衰减以及其他特殊效果。
图形软件的标准同样较第1版时明显进步了很多。第1版的SGP软件包基于的SIGGRAPH Core?9软件包、直视存储管和刷新矢量显示器现在基本上都已经消失了。支持结构层次存储和编辑的更加强大的PHIGS软件包已经成为ANSI和ISO的标准,广泛应用于科学和工程的实时几何图形制作中,与其相伴的PHIGS+支持光照、明暗处理、曲线和曲面。官方的图形标准中补充了许多事实标准,如Apple公司的QuickDraw,X Window的Xlib二维整型光栅图形包和Silicon Graphics公司的GL三维图形库。Pixar公司的照片真实感的RanderMan软件和硬拷贝页和屏幕图像描述的PostScript图形解释器同样也得到了广泛的应用。更好的图形软件的使用使得对用户界面的“感观”得到巨大改善,我们可以期待增加对三维效果的利用,使我们对信息的管理、表现、检索和漫游提供新的想像空间和形象,必是出于审美的考虑。
也许图形学中最重要的发展方向是对物体建模技术的愈加重视,不仅仅是生成这些物体的画面,同时人们对如何描述随时间变化的三维几何物体的几何特性和行为产生了更大的兴趣。这样,图形学在建模和绘制中就更加关注模拟、动画及“回归物理过程”,试图使创作出的物体尽可能真实。
当图形工具变得越来越复杂时,我们就需要能够有效地运用它们。绘制不再是瓶颈,所以研究人员开始尝试用人工智能技术帮助进行物体建模设计、运动规划、二维及三维物体的有效图形表示的布局。
当今图形学技术发展迅猛,任何一本参考书都必须不断进行更新和扩充才能跟上这样的发展。本书基本上对《交互式计算机图形学基础》做了总体重写,尽管页数几乎翻番,我们仍然不得不省略大量内容。
本书和第1版的主要区别如下:
?矢量图形学的定位由光栅图形学所代替。
?原来简单的二维浮点图形包(SGP)被SRGP和SPHIGS代替,体现了交互图形程序设计的两大主要流派。SRGP结合了QuickDraw和Xlib二维整型光栅图形包的特征;基于PHIGS的SPHIGS提供了具有层次显示列表的三维浮点包的基本特性。本书描述了如何应用这些标准图形包进行编程,并且同时讲述了这些图形包对于基本裁剪算法、扫描转换算法、观察算法和显示列表遍历算法等基本功能的实现细节。
?在更深的层次上讨论了用户界面问题,包括二维桌面比喻和三维交互设备。
?对建模的讨论包括了NURB(非均匀有理B样条)曲线和曲面,实体造型以及高级建模技术,如基于物理的建模、过程化模型、分形、L文法系统和粒子系统等。
?对绘制技术的讨论增加了对反走样的详细讨论,以及可见面判定、光照和明暗处理,包括基于物理的光照模型、光线跟踪、辐射度等。
?增加了高级光栅图形体系结构和算法的内容,包括裁剪、复杂图元的扫描转换、简单的图像处理操作等。
?增加了对动画的简单讨论。
阅读本书无须具备图形学的基础知识,只需要了解一定的C语言编程技术、基本的数据结构和算法、计算机体系结构和简单的线性代数。附录中列出了阅读本书必需的数学基础。本书的全部内容可在两个学期内讲授,但是书中内容划分为几个部分,也可以有选择地进行讲授。因此,读者可以根据自己的需要选择学习,由浅入深。本书可以大致分为下面几个部分:
基本知识
第1章对历史进行了简要回顾,并对硬件、软件、应用程序的最基本问题作了讨论。第2、3章讲述了简单的二维整型图形包SRGP的应用和实现方法。第4章介绍了图形硬件,包括如何应用硬件完成前面几章中提到的操作。第5、6章通过矩阵的方法介绍了在平面和三维空间中进行变换的思想,如何应用齐次坐标来统一线性变换和仿射变换,三维视图的描述,包括从任意视见体到标准视见体的变换。最后,第7章介绍了三维浮点层次图形包SPHIGS,通过一些基本的建模操作讲述了它的用法,SPHIGS是PHIGS标准的简化版本。这一章还讨论了PHIGS中可用的层次结构的优缺点以及使用这个图形软件包的应用程序的结构。
用户界面


点击看大图





加载中...
