C語言成像與光線追蹤程序設(shè)計

出版時間:1995-08  出版社:科學(xué)出版社/龍門書局  作者:C.D.沃特金森(美)  譯者:劉穎  
Tag標(biāo)簽:無  

內(nèi)容概要

內(nèi) 容 簡 介
計算機(jī)圖形在越來越多的領(lǐng)域得到了廣泛的應(yīng)用,而大多數(shù)個人計算機(jī)用戶卻因
缺乏基本的編程工具而不能在便宜的PC機(jī)上生成精美的計算機(jī)圖形,本書旨在幫助
這些用戶挖掘PC機(jī)潛在的圖形設(shè)計能力,制做逼真的高質(zhì)量計算機(jī)圖形。
本書介紹了計算機(jī)圖形學(xué)要求的向量和矩陣算術(shù)工具,討論了光線追蹤程序的生
成和使用,并給出了實際的C代碼。此外,本書還對三維建模工具、提高圖像質(zhì)量的方
法及圖形顯示設(shè)備等做了介紹。隨附的磁盤提供了大量程序?qū)嵗?,稍加改動即可用于?br />際的圖形制作。

書籍目錄

目 錄
前言
緒論
0.1本書的組織
0.2第一部分
0.2.1數(shù)學(xué)模塊
0.2.2圖形界面模塊
0.2.3使用這些模塊
0.3第二部分
0.3.1光線追蹤理論
0.3.2光線追蹤程序
0.3.3光線-物體相交測試
0.3.4陰影、紋理和光照
0.3.5復(fù)習(xí)光線追蹤程序代碼
0.3.6怎樣使用光線追蹤程序
0.4第三部分
0.5第四部分
0.6第五部分
0.7第六部分
0.8第七部分
0.9軟件和硬件要求
0.10總結(jié)
第一部分 標(biāo)準(zhǔn)和通用模塊
第一章 標(biāo)準(zhǔn)和C語言
1.1為什么選用C語言
1.2編程語言的概念
1.3變量和數(shù)據(jù)類型
1.4運算符
1.5程序控制
1.6函數(shù)
1.7宏
1.8指針和數(shù)組
1.9內(nèi)存
1.10結(jié)構(gòu)
1.11 typedef
1.12 輸入輸出(I/O)
1.13 文件I/O
1.14 編程風(fēng)格
1.15 參考讀物
1.16 光線跟蹤
第二章 數(shù)學(xué)模塊
2.1頭文件
2.1.1BkDefs.H頭文件
2.1.2BkMath.H頭文件
2.2編譯這些模塊
2.3BkMath.C程序
2.4 基本數(shù)學(xué)函數(shù)
2.4.1Radians和Degrees 函數(shù)
2.4.2CosD和SinD函數(shù)
2.4.3Power函數(shù)
2.4.5Log函數(shù)
2.4.6Exp10函數(shù)
2.4.7Sign和Intsign函數(shù)
2.4.8IntSqrt函數(shù)
2.4.9IntPower函數(shù)
2.4.10 MIN和MAX函數(shù)
2.5 向量和矩陣函數(shù)
2.5.1Vec和VecInt函數(shù)
2.5.2UnVec和UnVecInt函數(shù)
2.5.3VecDot函數(shù)
2.5.4VecCross函數(shù)
2.5.5VecLen函數(shù)
2.5.6VecNormalize函數(shù)
2.5.7VecMatxMult函數(shù)
2.5.8VecSub和VecSubIn函數(shù)
2.5.9VecAdd函數(shù)
2.5.10 VecAdd3函數(shù)
2.5.11 VecCopy和VecCopyInt函數(shù)
2.5.12 VecLinComb函數(shù)
2.5.13 VecScalMult、VecScalMultl和VecScalMultInt函數(shù)
2.5.14 VecAddScalMult函數(shù)
2.5.15 VecNull和VecNullInt函數(shù)
2.5.16 VecElemMult函數(shù)
2.5.17 VecMin和VecMax函數(shù)
2.5.18 VecNgate函數(shù)
2.6 仿射變換例程
2.6.1 ZeroMatrix函數(shù)
2.6.2 Translate3D函數(shù)
2.6.3 Scale3D)函數(shù)
2.6.4 Rotate3D函數(shù)
2.6.5 Multiply3DMatries函數(shù)
2.6.6 MatCopy函數(shù)
2.6.7 PrepareMatrix函數(shù)
2.6.8 PrepareInvMatrix函數(shù)
2.6.9 Tansform函數(shù)
2.7 偽隨機(jī)數(shù)的生成
2.7.1 InitRand函數(shù)
2.7.2 Rand函數(shù)
2.7.3 RandInt函數(shù)
第三章 圖形界面模塊
3.1 BkGlobs.H頭文件
3.2 BkGraph.H頭文件
3.3 BkGraph.C程序
3.3.1Plot函數(shù)
3.3.2 Clear_paletre函數(shù)
3.3.3 Set_Palette函數(shù)
3.3.4 Init_Palette函數(shù)
3.3.5 Init_Palette_2函數(shù)
3.3.6 CyClePalette函數(shù)
3.3.7 Swap函數(shù)
3.3.8 Circle函數(shù)
3.3.9 Line函數(shù)
3.3.10 Minl和Maxl函數(shù)
3.3.11 rivial reject函數(shù)
3.3.12 Clip_To_Screen函數(shù)
3.3.13 Init_Graphics函數(shù)
3.3.14 Set_Graphics_M(jìn)ode函數(shù)
3.3.15 Wait_For_Key函數(shù)
3.3.16 Exit_Graphies函數(shù)
3.3.17 Title函數(shù)
3.4 三維畫圖函數(shù)
3.4.1 Init_Plotting函數(shù)
3.4 .2 Init_Perspective函數(shù)
3.4.3 MapCoordinates函數(shù)
3.4.5 Cartesian_Plot_3D函數(shù)
3.4.6 Cylindrical_Plot3D函數(shù)
3.4.7 SphericalPlot 3D函數(shù)
3.4.8 Draw_Line_3D函數(shù)
3.5像素函數(shù)
3.5.1Put_Pixel函數(shù)
3.5.2Get_Pixel函數(shù)
3.6設(shè)置坐標(biāo)軸和調(diào)色板的函數(shù)
3.6.1Put_Axis_And_Palette函數(shù)
3.6.2Display_Axis函數(shù)
3.6.3Display_Palette函數(shù)
3.6.4Axis_And_Palette函數(shù)
3.7使用模塊
第四章 使用模塊
4.1Crystal.C文件
4.2Plants.C文件
4.3Stars-3D.C程序
4.4三維圓周運動模擬示例程序
4.5真實物體
第二部分 光線追蹤
第五章 光線追蹤程序數(shù)學(xué)模塊
第六章 光線追蹤理論
6.1即時光線追蹤
6.2光線的反射
6.3折射
6.4問題,問題,問題!
6.5答案,答案,答案!
6.6細(xì)節(jié)
第七章 光線追蹤程序
7.1投影圖形
7.2圖像質(zhì)量和變形
7.3防變形方法
7.4均勻采樣
7.5統(tǒng)計密集采樣
7.6結(jié)果
7.7簡單的照像機(jī)模型
7.8trace函數(shù)
7.9背景
第八章 光線-物體相交測試
8.1物體的定義
8.1.1光線的參數(shù)表示
8.1.2與球面相交
8.1.3與二次曲面相交
8.2曲面法線計算
8.3與平面物體相交
8.4三角形小塊
8.5構(gòu)造復(fù)雜物體
8.6構(gòu)造實體幾何
8.6.1包圍體
8.6.2包圍面
8.7層次樹
8.8搜索物體
8.9其它算法
第九章 看見光亮
9.1陰影模型
9.1.1背景色(K↓a)
9.1.2漫反射顏色(K↓d)
9.1.3鏡面反射迭加(K↓h)
9.1.4反射率(K↓a)及折射率(K↓t
9.2紋理,紋理,紋理
9.3映射圖象
9.4實體紋理構(gòu)造
9.5噪聲及擾動
9.6實體紋理樣式
9.7球面紋理
9.8制造波紋
9.9凹凸紋理
9.10大氣
9.11陰影
9.12關(guān)于代碼
第十章 光線追蹤程序代碼
10.1分離和解釋程序
10.1.1預(yù)處理
10.1.2記號分析程序
10.2基本體文件
10.3掃描屏幕
10.4追蹤
10.5相交
10.6包圍平面
10.7陰影處理
10.8通向BOB的途徑
10.9內(nèi)存問題
10.10構(gòu)成畫面
第十一章 如何使用光線追蹤程序
11.1運行Bob
11.2Bob命令
11.3統(tǒng)計數(shù)字
11.4輸入文件(.B)格式
11.5輸入文件布局
11.6預(yù)處理程序
11.6.1宏
11.6.2包含指令
11.7EDL分析程序
11.7.1studio結(jié)構(gòu)
11.7.2studio參數(shù)
11.8光源
11.9表面
11.9.1凹凸紋理
11.9.2加紋理的表面
11.10基本體
11.10.1球
11.10.2環(huán)
11.10.3多邊形
11.10.4三角形小塊
11.10.5圓錐
11.11變換
11.12圖像紋理
11.13剪切
11.14有關(guān)說明
第三部分 生成光線追蹤程序所需的物體數(shù)據(jù)庫
第十二章 過程物體數(shù)據(jù)庫
12.1生長的樹
12.2環(huán)形與環(huán)面
12.3一個令人困惑的物體
12.4光照和雪花球
12.5一塊吸收性極好的海綿
12.6一個六角形
12.7更為復(fù)雜的數(shù)據(jù)庫
第十三章 Z緩沖區(qū)數(shù)據(jù)
13.1Z緩沖區(qū)數(shù)據(jù)的線框輪廓
13.2光線追蹤的Z緩沖區(qū)數(shù)據(jù)庫
13.3生成Z緩沖區(qū)數(shù)據(jù)庫的程序
13.4生成Z緩沖區(qū)數(shù)據(jù)庫的分形程序
13.5三維Mandelbrot集
13.6三維Julia集
13.7使用四元數(shù)的分形
13.8四元數(shù)數(shù)學(xué)
13.9生成四元數(shù)分形數(shù)據(jù)庫
13.10地形Z緩沖區(qū)
13.11Smooth.EXE
13.12移動山脈
第四部分 物體數(shù)據(jù)庫的CAD產(chǎn)品
第十四章 三維數(shù)據(jù)庫建模器
14.1數(shù)據(jù)庫建模程序的功能
14.1.1基本體支持和操作
14.1.2物體支持和操作
14.1.3適當(dāng)時間內(nèi)生成數(shù)據(jù)庫視圖
14.14在數(shù)據(jù)庫內(nèi)部自由移動
14.1.5隱藏數(shù)據(jù)庫細(xì)節(jié)
14.2層次結(jié)構(gòu)的重要性
14.2.1重復(fù)利用性
14.2.2靈活性
14.2.3區(qū)域性和可擴(kuò)展性
14.2.4高效性
14.3Bob的數(shù)據(jù)庫層次:基本體、物體、畫面
14.4Ed:Bob的簡單數(shù)據(jù)庫建模程序
14.4.1啟動Ed
14.4.2Ed屏幕
14.4.3告訴Ed做什么
14.4.4系統(tǒng)參數(shù)
14.5系統(tǒng)模式
14.5.1讀寫畫面文件
14.5.2移動觀察點
14.5.3選擇物體
14.5.4實例化及刪除物體
14.5.5編輯物體位置和比例
14.5.6修改studio定義
14.5.7編輯studio參數(shù)
14.5.8退出studio模式
14.5.9編輯物體
14.5.10編輯物體結(jié)構(gòu)
14.5.11多邊形的一個特例
14.5.12編輯物體特征
14.5.13退出物體模式
14.5.14退出
14.6Ed源代碼總覽
14.6.1Ed源代碼使用的規(guī)則
14.6.2Ed基本數(shù)據(jù)結(jié)構(gòu)
14.6.3Ed全局變量
14.6.4Ed主要的程序元素
14.6Ed輸出文件的局限
第五部分 計算機(jī)圖形學(xué)的圖像處理技術(shù)
第十五章 圖像處理
15.1IMG2GIF。C
15.1.1直接指定調(diào)色板
15.1.2多數(shù)法
15.1.3中分法
15.1.4固定調(diào)色板
15.2有趣有益的抖動法
15.3建立.GIF文件
15.4IMG2GIF.C的技術(shù)說明
15.5文件格式
15.5.1Bob的.IMG文件格式
15.5.2Palette.MAP文件格式
15.6改善圖像質(zhì)量
15.7圖像顯示
第六部分 圖形硬件
第十六章 圖形硬件驅(qū)動程序
16.1 24位顏色
16.2 Bob結(jié)束語
第七部分 本書之外的內(nèi)容
第十七章 超越Bob
17.1制作圖形
17.2動畫
17.2.1車輪
17.2.2運動模糊
17.2.3紋理的問題
17.3實時光線追蹤
17.4高級光照模型
17.5輻射
17.5.1更多的近似
17.5.2為何使用輻射模型
17.6真實三維圖像
17.7何去何從

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    C語言成像與光線追蹤程序設(shè)計 PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7