出版時(shí)間:2010-7 出版社:電子工業(yè) 作者:(美)赫恩//巴克|譯者:蔡士杰//宋繼強(qiáng)//蔡敏 頁數(shù):702
Tag標(biāo)簽:無
前言
計(jì)算機(jī)圖形學(xué)是一種最令人興奮的且發(fā)展最快的現(xiàn)代技術(shù)。自從本書第一版面市以來,計(jì)算機(jī)圖形已成為一般的應(yīng)用軟件和計(jì)算機(jī)系統(tǒng)的標(biāo)準(zhǔn)特點(diǎn)。計(jì)算機(jī)圖形方法普遍地應(yīng)用于許多產(chǎn)品的設(shè)計(jì)、培訓(xùn)模擬、音樂視頻和電視廣告產(chǎn)品、動(dòng)畫、數(shù)據(jù)分析、科學(xué)研究以及其他應(yīng)用之中。各種應(yīng)用領(lǐng)域所需的許多技術(shù)和硬件設(shè)備已經(jīng)投入使用或正在開發(fā)之中。特別值得一提的是,當(dāng)前計(jì)算機(jī)圖形學(xué)研究中有許多與改善圖片生成的效率和速度有關(guān)。為了生成一張自然景象的真實(shí)感視圖,圖形程序必須模擬實(shí)際的光照效果和物理對(duì)象的折射。因此,當(dāng)前計(jì)算機(jī)圖形學(xué)的趨勢(shì)是將改進(jìn)的物理原理的近似結(jié)合到圖形算法中,從而更好地模擬物體和照明環(huán)境之間的復(fù)雜交互。第三版的特色本書第三版的內(nèi)容來自于我們多年來開設(shè)的各種課程的要點(diǎn),這些課程包括計(jì)算機(jī)圖形學(xué)引論、高級(jí)計(jì)算機(jī)圖形學(xué)、科學(xué)計(jì)算可視化、專題和項(xiàng)目課程。在撰寫本書第一版時(shí),許多圖形學(xué)課程和應(yīng)用僅處理二維方法,因而我們將二維和三維圖形技術(shù)分開討論。本書第一版的前一半內(nèi)容講述了二維計(jì)算機(jī)圖形處理的基礎(chǔ)概念,而在后面討論三維方法。不過現(xiàn)在三維圖形的應(yīng)用非常普遍,并且許多主要的計(jì)算機(jī)圖形學(xué)課程或者主要處理三維方法,或者較早地介紹三維圖形;因此,第三版的主要特點(diǎn)是將二維和三維主題集成在一起。我們也擴(kuò)充了許多相關(guān)主題,包括圖形學(xué)當(dāng)前的發(fā)展概況和新應(yīng)用的討論。本書第三版涵蓋的內(nèi)容有:圖形系統(tǒng)當(dāng)前的硬件和軟件組成、分形幾何、光線追蹤、樣條、光照模型、表面繪制、計(jì)算機(jī)動(dòng)畫、虛擬現(xiàn)實(shí)、圖形算法的并行實(shí)現(xiàn)、反走樣、超二次曲面、BSP樹、粒子系統(tǒng)、基于物理的建模、科學(xué)計(jì)算可視化、輻射度、凹凸映射和變形;主要擴(kuò)展的內(nèi)容有:動(dòng)畫、對(duì)象表示、三維觀察流水線、光照模型、表面繪制技術(shù)和紋理映射。第三版中另一有意義的改變是引入現(xiàn)在廣泛應(yīng)用并且多數(shù)計(jì)算機(jī)系統(tǒng)都具備的0penGL圖形子程序。0penGL軟件包為使用通用語言(如c和c++)進(jìn)行編程以及創(chuàng)建計(jì)算機(jī)圖形顯示,提供了巨大的、有效的且設(shè)備無關(guān)的函數(shù)集合。0penGL的輔助庫提供對(duì)需要設(shè)備交互的輸入和輸出操作以及其他的圖形過程(如生成圓柱形狀、球形對(duì)象和B樣條的處理)。程序設(shè)計(jì)示例第三版中提供了20多個(gè)完整的C++程序示例,這些都是采用流行的0penGL軟件包中的圖形子程序庫編寫的。這些程序展示了基本構(gòu)圖技術(shù)、二維和三維幾何變換、二維和三維觀察方法、透視投影、樣條生成、分形方法、交互鼠標(biāo)輸入、拾取操作、菜單和子菜單顯示以及動(dòng)畫技術(shù)的應(yīng)用。另外,書中還給出了100多個(gè)c++/0penGL程序段,用于展示裁剪、光照效果、表面繪制、紋理映射和許多其他計(jì)算機(jī)圖形方法的算法實(shí)現(xiàn)。
內(nèi)容概要
本書是一本內(nèi)容豐富、取材新穎的計(jì)算機(jī)圖形學(xué)著作,并在其前一版的基礎(chǔ)上進(jìn)行了全面擴(kuò)充,增加了許多新的內(nèi)容,覆蓋了近年來計(jì)算機(jī)圖形學(xué)的最新發(fā)展和成就。全書層次分明、重點(diǎn)突出,并附有使OpenGL編寫的大量程序以及各種效果圖,是一本難得的優(yōu)秀教材。 本書共分為15章,全面系統(tǒng)地講解了計(jì)算機(jī)圖形學(xué)的基本概念和相關(guān)技術(shù)。作者首先對(duì)計(jì)算機(jī)圖形學(xué)進(jìn)行綜述;然后講解了二維圖形的對(duì)象表示、算法及應(yīng)用,三維圖形的相關(guān)技術(shù)、建模和變換等;接著介紹了光照模型、顏色模型和動(dòng)畫技術(shù)。本書還新增了有關(guān)層次建模和圖形文件格式的介紹,最后的附錄給出了計(jì)算機(jī)圖形學(xué)中用到的基本數(shù)學(xué)概念。 本書可作為信息技術(shù)等相關(guān)專業(yè)本科生和研究生的教材或參考書,也可作為計(jì)算機(jī)圖形技術(shù)人員的參考資料。
作者簡(jiǎn)介
作者:(美國(guó))赫恩(Donald Hearn) (美國(guó))巴克(M.Pauline Baker) 譯者:蔡士杰 宋繼強(qiáng) 蔡敏 等 合著者:蔡士杰Donald Hearn,從1985年開始任教于伊利諾伊大學(xué)Urbana-Champmgn分校的計(jì)算機(jī)科學(xué)學(xué)院。Hewn博士擔(dān)任過多門課程的教學(xué)工作,其中包括計(jì)算機(jī)圖形學(xué)、科學(xué)計(jì)算可視化、計(jì)算科學(xué)、數(shù)學(xué)和應(yīng)用科學(xué)等。他還指導(dǎo)過多個(gè)研究項(xiàng)目并在該領(lǐng)域發(fā)表了大量的學(xué)術(shù)論文。 M.Pauline Baker,印第安納大學(xué)一普度大學(xué)計(jì)算機(jī)科學(xué)學(xué)院和信息學(xué)院的教授。Baker博士擔(dān)任著可視化和交互空間滲透技術(shù)實(shí)驗(yàn)室主任一職,同時(shí)她也是一位杰出的科學(xué)家。Baker博士正在研究使用計(jì)算機(jī)圖形和虛擬現(xiàn)實(shí)技術(shù)進(jìn)行科學(xué)數(shù)據(jù)挖掘。在此之前,她還擔(dān)任過伊利諾伊大學(xué)NCSA的可視化和虛擬環(huán)境實(shí)驗(yàn)室副主任。
書籍目錄
第1章 計(jì)算機(jī)圖形學(xué)綜述 1.1 圖和表 1.2 計(jì)算機(jī)輔助設(shè)計(jì) 1.3 虛擬現(xiàn)實(shí)環(huán)境 1.4 數(shù)據(jù)可視化 1.5 教學(xué)與培訓(xùn) 1.6 計(jì)算機(jī)藝術(shù) 1.7 娛樂 1.8 圖像處理 1.9 圖形用戶界面 1.10 小結(jié) 參考文獻(xiàn) 第2章 圖形系統(tǒng)概述 2.1 視頻顯示設(shè)備 2.2 光柵掃描系統(tǒng) 2.3 圖形工作站和觀察系統(tǒng) 2.4 輸入設(shè)備 2.5 硬拷貝設(shè)備 2.6 圖形網(wǎng)絡(luò) 2.7 因特網(wǎng)上的圖形 2.8 圖形軟件 2.9 OpenGL簡(jiǎn)介 2.10 小結(jié) 參考文獻(xiàn) 練習(xí)題 第3章 輸出圖元 3.1 坐標(biāo)系統(tǒng) 3.2 OpenGL中指定二維世界坐標(biāo)系統(tǒng) 3.3 OpenGL畫點(diǎn)函數(shù) 3.4 OpenGL畫線函數(shù) 3.5 畫線算法 3.6 并行畫線算法 3.7 幀緩存值的裝載 3.8 OpenGL曲線函數(shù) 3.9 圓生成算法 3.10 橢圓生成算法 3.11 其他曲線 3.12 并行曲線算法 3.13 像素編址和對(duì)象的幾何要素 3.14 填充區(qū)圖元 3.15 多邊形填充區(qū) 3.16 OpenGL多邊形填充區(qū)函數(shù) 3.17 OpenGL頂點(diǎn)數(shù)組 3.18 像素陣列圖元 3.19 OpenGL像素陣列函數(shù) 3.20 字符圖元 3.21 OpenGL字符函數(shù) 3.22 圖形分割 3.23 OpenGL顯示列表 3.24 OpenGL顯示窗口重定形函數(shù) 3.25 小結(jié) 示例程序 參考文獻(xiàn) 練習(xí)題 第4章 圖元的屬性 4.1 OpenGL狀態(tài)變量 4.2 顏色和灰度 4.3 OpenGL顏色函數(shù) 4.4 點(diǎn)的屬性 4.5 線的屬性 4.6 曲線屬性 4.7 OpenGL點(diǎn)屬性函數(shù) 4.8 OpenGL線屬性函數(shù) 4.9 填充區(qū)屬性 4.10 通用掃描線填充算法 4.11 凸多邊形的掃描線填充 4.12 曲線邊界區(qū)域的掃描線填充 4.13 不規(guī)則邊界區(qū)域的填充方法 4.14 OpenGL填充區(qū)屬性函數(shù) 4.15 字符屬性 4.16 OpenGL字符屬性函數(shù) 4.17 反走樣 4.18 OpenGL反走樣函數(shù) 4.19 OpenGL查詢函數(shù) 4.20 OpenGL屬性組 4.21 小結(jié) 參考文獻(xiàn) 練習(xí)題 第5章 幾何變換 5.1 基本的二維幾何變換 5.2 矩陣表示和齊次坐標(biāo) 5.3 逆變換 5.4 二維復(fù)合變換 5.5 其他二維變換 5.6 幾何變換的光柵方法 5.7 OpenGL光柵變換 5.8 二維坐標(biāo)系間的變換 5.9 三維空間的幾何變換 5.10 三維平移 5.11 三維旋轉(zhuǎn) 5.12 三維縮放 5.13 三維復(fù)合變換 5.14 其他三維變換 5.15 三維坐標(biāo)系間的變換 5.16 仿射變換 5.17 OpenGL幾何變換函數(shù) 5.18 小結(jié) 參考文獻(xiàn) 練習(xí)題 第6章 二維觀察 6.1 二維觀察流水線 6.2 裁剪窗口 6.3 規(guī)范化和視口變換 6.4 OpenGL二維觀察函數(shù) 6.5 裁剪算法 6.6 二維點(diǎn)裁剪 6.7 二維線裁剪 6.8 多邊形填充區(qū)裁剪 6.9 曲線的裁剪 6.10 文字的裁剪 6.11 小結(jié) 參考文獻(xiàn) 練習(xí)題 第7章 三維觀察 7.1 三維觀察概念綜述 7.2 三維觀察流水線 7.3 三維觀察坐標(biāo)系參數(shù) 7.4 世界坐標(biāo)系到觀察坐標(biāo)系的變換 7.5 投影變換 7.6 正投影 7.7 斜投影 7.8 透視投影 7.9 視口變換和三維屏幕坐標(biāo)系 7.10 OpenGL三維觀察函數(shù) 7.11 三維裁剪算法 7.12 OpenGL任選裁剪平面 7.13 小結(jié) 參考文獻(xiàn) 練習(xí)題 第8章 三維對(duì)象的表示 8.1 多面體 8.2 OpenGL多面體函數(shù) 8.3 曲面 8.4 二次曲面 8.5 超二次曲面 8.6 OpenGL二次曲面和三次曲面函數(shù) 8.7 柔性對(duì)象 8.8 樣條表示 8.9 三次樣條插值方法 8.10 Bezier樣條曲線 8.11 Bezier曲面 8.12 B樣條曲線 8.13 B樣條曲面 8.14 beta樣條 8.15 有理樣條 8.16 樣條表示之間的轉(zhuǎn)換 8.17 樣條曲線和曲面的顯示 8.18 OpenGL的逼近樣條函數(shù) 8.19 掃描表示法 8.20 結(jié)構(gòu)實(shí)體幾何法 8.21 八叉樹 8.22 BSP樹 8.23 分形幾何方法 8.24 形狀語法和其他過程方法 8.25 粒子系統(tǒng) 8.26 基于物理的方法 8.27 數(shù)據(jù)集可視化 8.28 小結(jié) 參考文獻(xiàn) 練習(xí)題 第9章 可見面判別算法 9.1 可見面判別算法的分類 9.2 后向面判別 9.3 深度緩存算法 9.4 A緩存算法 9.5 掃描線算法 9.6 深度排序算法 9.7 BSP樹算法 9.8 區(qū)域細(xì)分算法 9.9 八叉樹算法 9.10 光線投射算法 9.11 可見性檢測(cè)算法的比較 9.12 曲面 9.13 線框可見性算法 9.14 OpenGL可見性檢查函數(shù) 9.15 小結(jié) 參考文獻(xiàn) 練習(xí)題 第10章 光照模型與面繪制算法 10.1 光源 10.2 表面光照效果 10.3 基本光照模型 10.4 透明表面 10.5 霧氣效果 10.6 陰影 10.7 照相機(jī)參數(shù) 10.8 光強(qiáng)度顯示 10.9 半色調(diào)模式和抖動(dòng)技術(shù) 10.10 多邊形繪制算法 10.11 光線跟蹤方法 10.12 輻射度光照模型 10.13 環(huán)境映射 10.14 光子映射 10.15 添加表面細(xì)節(jié) 10.16 用多邊形模擬表面細(xì)節(jié) 10.17 紋理映射 10.18 凹凸映射 10.19 幀映射 10.20 OpenGL 光照和表面繪制函數(shù) 10.21 OpenGL紋理函數(shù) 10.22 小結(jié) 參考文獻(xiàn) 練習(xí)題 第11章 圖形用戶界面和交互輸入方法 11.1 圖形數(shù)據(jù)的輸入 11.2 輸入設(shè)備的邏輯分類 11.3 圖形數(shù)據(jù)的輸入功能 11.4 交互式構(gòu)圖技術(shù) 11.5 虛擬現(xiàn)實(shí)環(huán)境 11.6 OpenGL支持交互式輸入設(shè)備的函數(shù) 11.7 OpenGL的菜單功能 11.8 圖形用戶界面的設(shè)計(jì) 11.9 小結(jié) 參考文獻(xiàn) 練習(xí)題 第12章 顏色模型和顏色應(yīng)用 12.1 光的特性 12.2 顏色模型 12.3 標(biāo)準(zhǔn)基色和色度圖 12.4 RGB顏色模型 12.5 YIQ顏色模型 12.6 CMY和CMYK顏色模型 12.7 HSV顏色模型 12.8 HLS顏色模型 12.9 顏色選擇及其應(yīng)用 12.10 小結(jié) 參考文獻(xiàn) 練習(xí)題 第13章 計(jì)算機(jī)動(dòng)畫 13.1 計(jì)算機(jī)動(dòng)畫的光柵方法 13.2 動(dòng)畫序列的設(shè)計(jì) 13.3 傳統(tǒng)動(dòng)畫技術(shù) 13.4 通用計(jì)算機(jī)動(dòng)畫功能 13.5 計(jì)算機(jī)動(dòng)畫語言 13.6 關(guān)鍵幀系統(tǒng) 13.7 運(yùn)動(dòng)的描述 13.8 關(guān)節(jié)鏈形體動(dòng)畫 13.9 周期性運(yùn)動(dòng) 13.10 OpenGL動(dòng)畫子程序 13.11 小結(jié) 參考文獻(xiàn) 練習(xí)題 第14章 層次建模 14.1 基本建模概念 14.2 建模軟件包 14.3 通用層次建模方法 14.4 使用OpenGL顯示列表的層次建模 14.5 小結(jié) 參考文獻(xiàn) 練習(xí)題 第15章 圖形文件格式 15.1 圖像文件結(jié)構(gòu) 15.2 降色方法 15.3 文件壓縮技術(shù) 15.4 主流文件格式的結(jié)構(gòu) 15.5 小結(jié) 參考文獻(xiàn) 練習(xí)題附錄A 計(jì)算機(jī)圖形學(xué)的數(shù)學(xué)基礎(chǔ) 參考文獻(xiàn) 索引
章節(jié)摘錄
插圖:電子束的強(qiáng)度受設(shè)置在控制柵極上的電壓電平控制??刂茤艠O是一個(gè)金屬圓筒,緊挨著陰極安裝。若在控制柵極上加上較高的負(fù)電壓,則將阻止電子活動(dòng)從而截?cái)嚯娮邮?,使之停止從控制柵極末端的小孔通過。而在控制柵極上施以較低的負(fù)電壓,則僅僅減少了通過的電子數(shù)量。由于熒光層發(fā)射光的強(qiáng)度依賴于轟擊屏幕的電子數(shù)量,因此可以通過改變控制柵極的電壓來控制顯示的光強(qiáng)。我們使用圖形軟件命令來設(shè)定各個(gè)屏幕位置的亮度級(jí),這將在第3章進(jìn)行討論。CRT的聚焦系統(tǒng)用來控制電子束在轟擊熒光層時(shí)會(huì)聚到一個(gè)小點(diǎn)。否則,由于電子互相排斥,電子束在靠近屏幕時(shí)會(huì)散開。聚焦既可以用電場(chǎng)實(shí)現(xiàn),也可以用磁場(chǎng)實(shí)現(xiàn)。對(duì)于靜電聚焦,電子束通過如圖2.3所示的帶正電荷的金屬圓筒,該圓筒形成一個(gè)靜電透鏡。靜電透鏡的作用是使電子束聚焦在屏幕的中心,正如光學(xué)透鏡將光束聚焦在指定的焦距一樣。類似透鏡的聚焦效果,可以由環(huán)繞CRT封裝外部安裝的線圈所形成的磁場(chǎng)來完成。磁性聚焦透鏡能在屏幕上產(chǎn)生最小尺寸的亮點(diǎn)。在高精度系統(tǒng)中,還使用附加的聚焦硬件,以保持電子束能聚焦到所有屏幕位置。因?yàn)槎鄶?shù)CRT彎曲部分的直徑大于從聚焦系統(tǒng)到屏幕中心的距離,所以電子束到屏幕不同點(diǎn)所經(jīng)過的距離是不同的。因此,電子束只能在屏幕中心正確聚焦。當(dāng)電子束移到屏幕邊框時(shí),所顯示的圖像會(huì)變得模糊。系統(tǒng)可按電子束的屏幕位置來調(diào)整聚焦,從而彌補(bǔ)這一缺陷。電子束的偏轉(zhuǎn)受電場(chǎng)或磁場(chǎng)控制。CRT現(xiàn)在通常配備一個(gè)裝在CRT封裝外部的磁性偏轉(zhuǎn)線圈,如圖2.2 所示。使用兩對(duì)線圈,將它們成對(duì)地安裝在CRT封裝的頸部,一對(duì)安裝在頸部的頂部和底部,另一對(duì)設(shè)置在頸部?jī)蓚?cè)。每對(duì)線圈產(chǎn)生的磁場(chǎng)造成橫向偏轉(zhuǎn)力,該力正交于磁場(chǎng)方向,也垂直于電子束的行進(jìn)方向。一對(duì)線圈實(shí)現(xiàn)水平偏轉(zhuǎn),另一對(duì)則實(shí)現(xiàn)垂直偏轉(zhuǎn)。
編輯推薦
《計(jì)算機(jī)圖形學(xué)(第3版)》的第三版介紹了設(shè)計(jì)、使用和理解計(jì)算機(jī)圖形系統(tǒng)及其應(yīng)用的基本原理,并且提供了一些OPENGL編程實(shí)例。書中詳細(xì)討論了圖形系統(tǒng)的軟件和硬件組成,并且將二維和三維圖形的相關(guān)內(nèi)容集成到一起。對(duì)于沒有計(jì)算機(jī)圖形學(xué)背景知識(shí)的讀者,作者提供了有關(guān)的基礎(chǔ)概念,描述了如何創(chuàng)建從簡(jiǎn)單的線條圖到復(fù)雜的真實(shí)場(chǎng)景的圖片?!队?jì)算機(jī)圖形學(xué)(第3版)》主要包含的新特性:對(duì)OpenGL計(jì)算機(jī)圖形核心編程庫GLU及輔助庫GLUT提供了完整和綜合的解釋;包含了100多個(gè)內(nèi)容廣泛的編程實(shí)例,展示了OpenGL函數(shù)的使用;提供了20多個(gè)完整的C++程序,給出了使用C++編寫的實(shí)例;將三維和二維計(jì)算機(jī)圖形方法的討論結(jié)合在一起。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載