計算機圖形學——用OpenGL實現(第2版)

計算機圖形學——用OpenGL實現(第2版)

《計算機圖形學——用OpenGL實現(第2版)》是2006年出版的圖書,作者是羅霄。

基本信息

圖書簡介

本書通過最能代表技術發展狀況的示例綜合介紹了計算機圖形學方面的原則和技巧,其中的示例都是學生和老師們能夠每天在網際網路和利用計算機製作的電影中看到的。作者曾經編寫過許多極具實用性的圖書。書中的每個概念都有詳細介紹,並且說明了其背後的數學原理。本書向讀者介紹了將數學算法轉變成程式代碼的方法,並有結果展示。新版本還為讀者提供了計算機圖形學領域的最前沿信息。

圖書前言

本書特色:

使用OpenGL作為支持軟體--附錄中說明了如何獲取這個軟體(免費下載)及其

安裝方法,這個軟體在多種平台上都能使用。

使用C++作為程式語言。介紹有用的圖形類,但並非嚴格的面向對象編程。

最前沿和更深入的3D圖形處理技術和數學原理。

更新了所有反映這一領域發展狀況的內容。

每章最後都有大量的案例分析。

對圖形學技巧的首要原則的清晰描述。

介紹了功能強大的場景設計語言(Scene Design Language, SDL);本書的網站

中有SDL解釋程式的C++代碼。

一個附錄專門介紹了PostScript® 語言。

提供了概念、背景數學原理、程式編碼和結果之間的連結。

包括了豐富的、能夠反映技術發展水平的成熟示例。

圖書目錄

第1章 計算機圖形學導言 1

1.1 什麼是計算機圖形 1

1.2 計算機生成的圖片套用

在哪些地方 3

1.2.1 藝術、娛樂以及出版 3

1.2.2 計算機圖形和圖像處理 4

1.2.3 監視過程 5

1.2.4 顯示模擬 6

1.2.5 計算機輔助設計 7

1.2.6 科學分析和可視化 7

1.3 在計算機圖形中創建的圖片元素 10

1.3.1 折線 10

1.3.2 文本 12

1.3.3 實心區域 13

1.3.4 光柵圖像 14

1.3.5 灰度陰影的呈現以及

光柵圖像中的顏色 18

1.4 圖像顯示設備 21

1.4.1 繪線型顯示器 21

1.4.2 光柵顯示器 22

1.4.3 索引顏色和查找表格 26

1.4.4 其他的光柵顯示設備 29

1.4.5 硬拷貝光柵設備 30

1.5 圖形輸入原語和設備 31

1.5.1 輸入圖形原語的類型 31

1.5.2 物理輸入設備的類型 32

1.6 小結 34

1.7 進一步閱讀 34

第2章 繪製圖片入門 36

2.1 著手創建圖片 36

2.1.1 設備無關編程和OpenGL 38

2.1.2 基於視窗的編程 38

2.1.3 打開一個繪圖視窗 40

2.2 繪製基本圖形原語 41

繪製點叢 44

2.3 繪製線條畫 50

2.3.1 繪製折線和多邊形 51

2.3.2 使用moveto( )和

lineto( )繪製線條 55

2.3.3 繪製校準長方形 56

2.3.4 校準長方形的高寬比 57

2.3.5 填充多邊形 59

2.3.6 OpenGL中的其他

圖形原語 60

2.4 使用滑鼠和鍵盤的簡單互動作用 61

2.4.1 滑鼠互動作用 61

2.4.2 鍵盤互動作用 64

2.5 小結 65

2.6 案例分析 66

案例分析2.1?偽隨機點的集合 66

案例分析2.2?疊代函式系統

導言 68

案例分析2.3?資金分割率和

其他的寶石 71

案例分析2.4?建立並使用折線

檔案 73

案例分析2.5?線條和多邊形的

點畫法 74

案例分析2.6?折線編輯器 75

案例分析2.7?建立並運行迷陣 76

2.7 進一步閱讀 78

第3章 更多繪圖工具 79

3.1 簡介 80

3.2 世界視窗和視口 80

3.2.1 從視窗到視口的映射 82

3.2.2 自動設定視窗和視口 91

3.3 裁剪線 94

3.3.1 裁剪線段 94

3.3.2 Cohen-Sutherland裁剪

算法 95

3.4 開發Canvas類 98

3.4.1 一些有用的支持類 99

3.4.2 類Canvas的聲明 100

3.4.3 類Canvas的實現方法 101

3.5 相對繪圖例程 103

3.5.1 開發moveRel( )和

lineRel( ) 104

3.5.2 龜紋繪圖歷程 105

3.6 基於規則多邊形的圖形 109

3.6.1 規則多邊形 109

3.6.2 n-Gon的變分(Variation) 111

3.7 繪製圓和圓弧 115

3.7.1 繪製圓 115

3.7.2 繪製圓弧 115

3.8 對曲線使用參數形式 119

3.8.1 曲線的參數形式 119

3.8.2 繪製以參數表示的曲線 122

3.8.3 超橢圓(Superellipses) 124

3.8.4 極坐標形狀 125

3.8.5 3D曲線 127

3.9 小結 128

3.10 案例分析 129

案例分析3.1 學習數理邏輯圖形

和混沌模擬 129

案例分析3.2 在C或者C++中實

現Cohen-Suther-

land裁剪器 131

案例分析3.3 在Turbo C++中

實現Canvas 133

案例分析3.4 繪製圓弧 135

案例分析3.5 一些用於物理和

工程中的圖形 136

案例分析3.6 平鋪圖案 138

案例分析3.7 主旋律的有趣

改變 139

案例分析3.8 圓圍繞著圓

滾動 141

案例分析3.9 超橢圓 142

3.11?進一步閱讀 143

第4章 圖形向量工具 144

4.1 簡介 145

4.2 向量 147

4.2.1 向量操作 148

4.2.2 向量線性組合 149

4.2.3 向量的大小;單位向量 151

4.3 點積 152

4.3.1 點積的性質 153

4.3.2 兩個向量的夾角 154

4.3.3 b·c的符號和正交性 154

4.3.4 2D"正交"向量 156

4.3.5 正交投影和點到線

的距離 158

4.3.6 投影的套用:反射 160

4.4 兩個向量的叉積 161

4.4.1 叉積的幾何解釋 162

4.4.2 求平面的法向量 163

4.5 主要幾何對象的表示 164

4.5.1 坐標系和坐標框架 165

4.5.2 點的仿射組合 168

4.5.3 兩個點的線性插值 170

4.5.4 藝術和動畫的"插值" 171

4.5.5 概述:二次插值、立方

插值和貝濟埃曲線 173

4.5.6 表示線和平面 174

4.6 求兩條線段的交點 182

直線相交的套用:過三點的圓 184

4.7 直線和平面的交點;裁剪 186

4.8 多邊形相交問題 188

4.8.1 處理凸多邊形和多面體 189

4.8.2 射線與凸多邊形的交點

和裁剪問題 190

4.8.3 Cyrus-Beck裁剪算法 194

4.8.4 任意多邊形的裁剪 196

4.8.5 更高級的裁剪問題 198

4.9 小結 198

4.10 案例分析 199

案例分析4.1 插值動畫 199

案例分析4.2 大量的圓 200

案例分析4.3 點Q是否在凸多

邊形P內部 201

案例分析4.4 密室反射(2D射線

跟蹤) 202

案例分析4.5 Cyrus-Beck

裁剪 203

案例分析4.6 用凸多邊形裁剪多

邊形:Sutherland-

Hodgman裁剪 203

案例分析4.7 用多邊形裁剪多

邊形:Weiler-

Atherton 裁剪 206

案例分析4.8 多邊形的布爾

操作 208

4.11 進一步閱讀 210

第5章 對象的變換 211

5.1 簡介 212

5.2 變換導論 212

5.2.1 變換點和對象 215

5.2.2 仿射變換 217

5.2.3 初等2D仿射變換的

幾何效果 218

5.2.4 仿射變換的逆轉 223

5.2.5 組合仿射變換 224

5.2.6 組合2D變換的例子 226

5.2.7 仿射變換的一些

有用特徵 230

5.3 3D仿射變換 235

5.3.1 初等3D變換 236

5.3.2 組合3D仿射變換 240

5.3.3 組合旋轉 240

5.3.4 3D仿射變換特徵小結 245

5.4 改變坐標系 246

5.5 在程式中使用仿射變換 249

保存CT以備用 256

5.6 使用OpenGL繪製3D場景 260

5.6.1 觀察過程和圖形流水線

綜述 261

5.6.2 一些OpenGL建模和

視角工具 264

5.6.3 用OpenGL繪製基本

形狀 267

5.6.4 從檔案中讀取場景 275

5.7 小結 279

5.8 案例分析 280

案例分析5.1 用Canvas中的CT

進行自行變換 280

案例分析5.2 使用多個旋轉繪製圖

5.39中的星星 280

案例分析5.3 分解2D仿射變換 280

案例分析5.4 通用3D錯切 284

案例分析5.5 繞某條軸旋轉:構造

方法 286

案例分析5.6 分解3D仿射

變換 287

案例分析5.7 用SDL繪製3D

場景 289

5.9 進一步閱讀 289

第6章 使用多邊形格線為各種形狀建模 290

6.1 簡介 290

6.2 使用多邊形格線實體建模簡介 291

6.2.1 定義多邊形格線 292

6.2.2 計算法向量 294

6.2.3 格線的性質 296

6.2.4 為非實體物體建立格線

模型 298

6.2.5 在程式中使用格線 298

6.3 多面體 301

6.3.1 稜柱和對角柱 303

6.3.2 柏拉圖立體 304

6.3.3 其餘常見的多面體 309

6.4 推擠型形狀 312

6.4.1 生成稜柱 312

6.4.2 推擠稜柱數組:"堆砌

工作" 313

6.4.3 帶有"扭曲"的推擠 315

6.4.4 建立分段推擠形狀:管狀

物體和蛇形物體 316

6.4.5 "離散地"延伸旋轉面 321

6.5 平滑物體的格線近似 323

6.5.1 表面的表示方法 323

6.5.2 表面的法向量 325

6.5.3 仿射變換的作用 326

6.5.4 三種"標準"形狀:球面、

圓柱面和圓錐面 327

6.5.5 為曲面建立多邊形格線 331

6.5.6 直紋面 333

6.5.7 旋轉面 338

6.5.8 二次曲面 340

6.5.9 超二次曲面 344

6.5.10 基於三維曲線的管狀

物體 346

6.5.11 基於雙變數顯式函式

的表面 346

6.6 小結 347

6.7 案例分析 348

案例分析6.1 存儲在檔案中的

格線 348

案例分析6.2 Newell方法的

推導 349

案例分析6.3 稜柱 351

案例分析6.4 稜柱組和推擠

四邊形帶 352

案例分析6.5 基於參數曲線的

管狀物體和蛇形

物體 353

案例分析6.6 建立離散旋轉面 354

案例分析6.7 關於邊列表和

線框模型 354

案例分析6.8 拱形屋頂 354

案例分析6.9 關於柏拉圖立體 355

案例分析6.10 關於阿基米德

立體 355

案例分析6.11 二次曲面的代數

表達式 355

案例分析6.12 超二次曲面 357

案例分析6.13 繪製平滑參數

表面 357

案例分析6.14 錐化、扭曲、彎曲

和擠壓 358

6.8 進一步閱讀 359

第7章 三維視圖 360

7.1 簡介 360

7.2 再次研究照相機 361

7.2.1 設定視角範圍 362

7.2.2 照相機的定位和定向 362

7.3 在程式中建立照相機 368

移動照相機 370

7.4 三維物體的透視投影 373

7.4.1 點的透視投影 374

7.4.2 直線的透視投影 377

7.4.3 把透視法結合到圖形

管道中 380

7.4.4 對視角範圍進行面裁剪 387

7.5 生成立體視圖 393

7.6 投影的分類 395

7.6.1 一點透視,兩點透視和

三點透視 396

7.6.2 平行投影 400

7.7 小結 406

7.8 案例分析 407

案例分析7.1 在場景中移動

照相機 407

案例分析7.2 立體視圖 408

案例分析7.3 生成平行投影 408

案例分析7.4 自己產生視圖(假定

沒有OpenGL可以

使用) 408

案例分析7.5 去掉背面以提高

效率 408

7.9 進一步閱讀 410

第8章 渲染表面獲得視覺真實感 411

8.1 簡介 411

8.2 明暗處理模型介紹 415

8.2.1 計算反射光的幾何要素 416

8.2.2 計算漫反射分量 416

8.2.3 鏡面反射 418

8.2.4 環境光的作用 421

8.2.5 光分量的結合 422

8.2.6 添加顏色 423

8.2.7 明暗處理和圖形管道 425

8.2.8 在OpenGL中使用光源 426

8.2.9 在OpenGL中使用材質

屬性 431

8.2.10 對SDL指定的場景進行

明暗處理 432

8.3 平面明暗處理方式和平滑明暗

處理方式 432

8.3.1 平面明暗處理 433

8.3.2 平滑明暗處理 434

8.4 去除隱藏面 438

深度緩衝區方法 438

8.5 給面添加紋理 441

8.5.1 把紋理映射到平表面上 444

8.5.2 渲染紋理 446

8.5.3 紋理改變了什麼 453

8.5.4 使用OpenGL獲得的

紋理示例 455

8.5.5 向曲面上環繞紋理 460

8.5.6 反射映射 464

8.6 為物體添加陰影 467

8.6.1 作為紋理的陰影 468

8.6.2 利用陰影緩衝區

生成陰影 469

8.7 小結 471

8.8 案例分析 472

案例分析8.1 使用OpenGL生成

有陰影的物體 472

案例分析8.2 自己實現圖形

管道 472

案例分析8.3 添加多邊形填充和

深度緩衝區去除

隱藏面 473

案例分析8.4 渲染紋理 473

案例分析8.5 套用可程式3D

紋理 473

案例分析8.6 繪製陰影 474

案例分析8.7 擴展SDL使其包括

紋理生成 474

8.9 進一步閱讀 474

第9章 通向無限之路 475

9.1 簡介 476

9.2 分形與自相似性 476

9.2.1 曲線的連續細化 477

9.2.2 繪製Koch曲線和Koch

雪花 478

9.2.3 分形維數 480

9.3 字元串產生式和PEANO曲線 481

9.3.1 在程式中遞歸生成字元串

並繪圖 483

9.3.2 添加分支 486

9.4 拼接平面 489

9.4.1 單面拼接 490

9.4.2 雙面拼接 492

9.4.3 繪製拼接 494

9.4.4 "爬蟲" 494

9.5 通過疊代函式系統生成圖像 497

9.5.1 拷貝器試驗 497

9.5.2 拷貝過程的一些基本

理論 499

9.5.3 繪製第k次疊代結果 500

9.5.4 混沌遊戲 501

9.5.5 計算IFS;分形圖像壓縮 504

9.6 MANDELBROT集 507

9.6.1 Mandelbrot集和疊代

函式系統 508

9.6.2 定義Mandelbrot集 511

9.6.3 計算點c是否在Mandelbrot

集內 513

9.6.4 繪製Mandelbrot集 514

9.6.5 Mandelbrot集的幾點性質 515

9.7 JULIA集 516

9.7.1 充滿Julia集Kc 516

9.7.2 繪製充滿Julia集 516

9.7.3 固定點和吸引盆的

幾點性質 517

9.7.4 Julia集Jc 519

9.8 隨機分形 521

9.8.1 線段的分形化 522

9.8.2 控制分形曲線的

頻譜密度 523

9.9 小結 525

9.10 案例分析 526

案例分析9.1 繪製字元串

產生式 526

案例分析9.2 繪製雪花和

爬蟲 527

案例分析9.3 混沌遊戲 529

案例分析9.4 繪製Mandelbrot

集中的軌道 529

案例分析9.5 生成Mandelbrot集

的圖像 530

案例分析9.6 生成Julia集的

圖像 530

案例分析9.7 非周期性拼接;

Penrose拼板 530

案例分析9.8 分形化曲線 532

案例分析9.9 為分形山建模 533

9.11 進一步閱讀 533

第10章 光柵顯示工具 534

10.1 簡介 534

10.2 處理像素映射 536

10.2.1 對像素映射的操作 536

10.2.2 像素映射的有用數據

類型 537

10.2.3 圖像的縮放和旋轉 543

10.3 合併像素映射 546

10.3.1 讀-修改-寫循環 547

10.3.2 Alpha通道和圖像

融合 548

10.3.3 像素的邏輯合併 552

10.3.4 BitBLT操作 556

10.4 自己實現直線繪製:Bresenham

算法 557

Bresenham直線繪製算法 558

10.5 定義和填充像素區域 563

10.5.1 定義區域範圍 564

10.5.2 像素定義的區域 564

10.5.3 一種遞歸洪水填充

算法 565

10.5.4 用圖案填充區域 566

10.5.5 利用一致性:基於像素

串的區域填充 568

10.6 處理符號定義的區域 569

10.6.1 矩形定義的區域 570

10.6.2 路徑定義的區域 571

10.7 填充多邊形定義的區域 573

10.7.1 邊緣上的哪些像素

屬於多邊形 574

10.7.2 改進算法性能 576

10.8 失真;反失真技術 580

10.8.1 反失真技術 581

10.8.2 紋理的反失真 586

10.8.3 使用OpenGL反失真 588

10.9 生成更多的明暗效果和色彩 590

10.9.1 順序抖動 591

10.9.2 誤差擴散 595

10.10 小結 597

10.11 案例分析 598

案例分析10.1 讀取和顯示BMP

圖像檔案 598

案例分析10.2 用OpenGL融合

兩幅圖像 598

案例分析10.3 基於像素串的

區域填充 598

案例分析10.4 處理shape數據

結構 599

案例分析10.5 shape的鏈碼 599

案例分析10.6 填充"水平凸"

多邊形 599

案例分析10.7 一般多邊形

填充 600

案例分析10.8 誤差擴散 600

10.12 進一步閱讀 600

第11章 曲線與曲面設計 601

11.1 簡介 602

11.1.1 軌跡參數曲線 602

11.1.2 運動的平滑度 603

11.2 用多項式表示曲線 606

11.3 關於互動式曲線設計 611

11.4 用貝濟埃曲線進行曲線設計 613

de Casteljau算法 613

11.5 貝濟埃曲線的性質 618

11.6 尋找更好的混合函式 623

11.6.1 局部控制問題 623

11.6.2 混合函式集的期望

性質表 624

11.6.3 分段多項式曲線和樣條 626

11.6.4 根據g(t)建立一組混合

函式 627

11.6.5 樣條曲線和基函式 630

11.7 B樣條基函式 631

11.7.1 B樣條函式定義 632

11.7.2 在結點向量中使用

多重結點 636

11.7.3 開放B樣條曲線:標準

結點向量 637

11.8 B樣條曲線設計的有用性質 640

使用多重控制點 641

11.9 有理樣條和NURBS曲線 642

11.10 插值簡述 646

11.10.1 用分段三次多項式

插值 647

11.10.2 Hermite插值 648

11.10.3 自然三次樣條 651

11.10.4 三次插值中計算

斜率 653

11.10.5 互動指定切向量 656

11.11 曲面建模 657

11.11.1 基於B樣條的

直紋面 657

11.11.2 基於B樣條的

旋轉面 657

11.11.3 貝濟埃表面碎片 659

11.11.4 貝濟埃碎片的拼接 660

11.11.5 B樣條碎片 662

11.11.6 NURBS曲面 663

11.12 小結 664

11.13 案例分析 666

案例分析11.1 幾種有趣的

參數曲線 666

案例分析11.2 "橢圓檯球

桌" 667

案例分析11.3 貝濟埃曲線 669

案例分析11.4 一種二次樣條

曲線生成法 669

案例分析11.5 建立樣條曲線

編輯器 669

案例分析11.6 用B樣條插值

控制點 670

案例分析11.7 用三次多項式

插值 671

案例分析11.8 古老的茶壺 671

案例分析11.9 投影變換不

變性 673

案例分析11.10 繪製NURBS

碎片 673

11.14 進一步閱讀 675

第12章 色彩理論 676

12.1 簡介 676

12.2 描述顏色 679

12.2.1 主導波長 679

12.2.2 色匹配 680

12.3 國際照明協會標準 682

12.3.1 構造CIE表 684

12.3.2 使用CIE色度表 685

12.3.3 色域 686

12.4 顏色空間 687

12.4.1 RGB和CMY顏色空間 687

12.4.2 加色和減色系統 688

12.4.3 HLS顏色模型 689

12.5 顏色量化 692

12.5.1 均衡量化 693

12.5.2 流行算法 695

12.5.3 中線切割算法 695

12.5.4 八叉樹量化 696

12.6 小結 698

12.7 案例分析 699

案例分析12.1 畫CIE圖 699

案例分析12.2 畫RGB空間 699

案例分析12.3 HSV到RGB

的轉變 699

案例分析12.4 均勻顏色量化 699

案例分析12.5 流行顏色量化 699

案例分析12.6 中線切割顏色

量化 699

案例分析12.7 八叉樹顏色

量化 700

12.8 進一步閱讀 701

第13章 隱面的消除 702

13.1 簡介 703

13.1.1 對象精度與圖像精度

方法的比較 704

13.1.2 多邊形格線的數據描述 705

13.2 再次研究深度快取算法 707

13.3 列表優先HSR算法 708

13.3.1 粗心畫家算法 709

13.3.2 使用二叉空間分割(BSP)

樹的HSR 710

13.3.3 深度排序算法 714

13.4 掃描線HSR方法 716

13.5 區域的細分方法 719

13.5.1 象限細分 719

13.5.2 簡單區域的其他定義 722

13.6 關於隱線消除法 724

edgeTest( )中的幾何測試 726

13.7 曲面的HSR方法 728

13.8 小結 730

13.9 案例分析 731

案例分析13.1 畫家算法

測試 731

案例分析13.2 測試和分割 732

案例分析13.3 使用BSP樹

消除隱面 732

案例分析13.4 使用深度排序法解

決HSR問題 733

案例分析13.5 採用掃描線HSR

方法 734

案例分析13.6 使用WARNOCK

算法繪製 734

案例分析13.7 HLR的邊堆疊

算法 734

13.10 進一步閱讀 735

第14章 光線追蹤法的介紹 736

14.1 簡介 737

14.2 建立光線跟蹤法的幾何學 738

14.3 光線跟蹤法過程概述 740

14.4 光線與對象的交點 741

14.4.1 光線與通用平面的

相交 743

14.4.2 光線與通用球體相交 743

14.4.3 光線與變換後的對象

相交 744

14.5 編制光線跟蹤器的應用程式 746

14.5.1 計算光線-球體相交

的例程 752

14.5.2 用於發光球體場景的

完整的光線跟蹤器 754

14.6 光線與其他幾種基本

形狀的相交 755

14.6.1 與正方形相交 755

14.6.2 與錐形柱體相交 756

14.6.3 與立方體(或任何凸

多面體)相交 759

14.6.4 考慮更多的基本形狀 766

14.7 繪製場景的明暗圖 767

14.7.1 確定命中點處的法向量 768

14.7.2 根據對象的表面材料

為其著色 768

14.7.3 基於物理原理的明暗處理

模型:Cook-Torrance

明暗處理 770

14.8 加入表面紋理 776

14.8.1 實體紋理 777

14.8.2 在表面上貼上圖像 786

14.8.3 反失真光線追蹤 788

14.9 範圍的使用 789

14.9.1 框形範圍和球形範圍 790

14.9.2 投影範圍的使用 795

14.10 加陰影以增加真實感 798

14.11 反射與透明 801

14.11.1 光的折射 803

14.11.2 處理shade( )中的

折射問題 807

14.12 複合對象:關於對象的布爾

運算 810

14.12.1 對CSG對象的光線

追蹤 811

14.12.2 布爾對象的數據

結構 813

14.12.3 光線與布爾對象相交 816

14.12.4 構造和使用CSG對象

的範圍 820

14.13 小結 822

14.14 案例分析 823

案例分析14.1 放射型光線

跟蹤器 823

案例分析14.2 一種新型的光線

跟蹤器 824

案例分析14.3 在光線跟蹤器中

實現陰影處理 824

案例分析14.4 使用範圍加速光

線跟蹤過程 824

案例分析14.5 對3D紋理的

光線跟蹤 824

案例分析14.6 反失真 825

案例分析14.7 對其他基本形狀

的光線跟蹤 825

案例分析14.8 一個用於研究

折射效應的2D

光線跟蹤器 825

案例分析14.9 反射光和折

射光 825

案例分析14.10 對對象的布爾

組合進行光線

跟蹤 825

14.15 進一步閱讀 826

附錄1 圖形工具:獲得OpenGL 827

A1.1 OpenGL的獲取和安裝 827

附錄2 計算機圖形學的數學研究 829

A2.1 一些關於矩陣及其運算的

主要定義 829

A2.1.1 矩陣的運算 830

A2.1.2 兩個矩陣相乘 831

A2.1.3 矩陣的分塊 833

A2.1.4 矩陣的行列式 834

A2.1.5 矩陣的逆矩陣 835

A2.2 向量及其運算的一些性質 837

A2.2.1 向量的正交;正交點積 837

A2.2.2 標量三重積 837

A2.2.3 三重向量積以及4個

向量的積 839

A2.3 複數的運算 839

A2.4 球坐標和方向餘弦 842

附錄3 一些有用的類以及實用例程 845

附錄4 PostScript?簡介 877

A4.1 關於PostScript語言 878

A4.1.1 準備事項 878

A4.1.2 PostScript是"基於

堆疊的" 879

A4.1.3 一些有關堆疊的操作符:

pop、dup、exch和

clear 880

A4.1.4 更高級的堆疊操作符 880

A4.1.5 一些算術操作符 881

A4.2 PostScript中的圖形操作符 884

A4.2.1 坐標系及其變換 884

A4.2.2 路徑構造動詞 885

A4.2.3 圓弧 886

A4.2.4 用作繪圖動詞 887

A4.2.5 坐標變換 888

A4.2.6 圖形狀態操作符 892

A4.3 在PostScript中繪製文本 893

A4.4 定義新的變數和過程 894

A4.4.1 定義變數 894

A4.4.2 定義過程 895

A4.4.3 使用repeat實現一種

簡單的疊代形式 899

A4.5 決策和疊代 901

A4.5.1 把布爾值作為參數的

動詞 901

A4.5.2 判斷 902

A4.5.3 疊代 904

A4.6 列印值 908

A4.7 繪製灰度圖 909

附錄5 SDL簡介 912

A5.1 SDL文法 913

A5.2 SDL中的宏 917

A5.3 擴展SDL 917

相關詞條

相關搜尋

熱門詞條

聯絡我們