關(guān)于我們
書單推薦
新書推薦
|
計(jì)算機(jī)圖形學(xué)(第四版)(英文版) 讀者對(duì)象:本書可作為信息技術(shù)等相關(guān)專業(yè)本科生和研究生的雙語(yǔ)教材或參考書,也可作為計(jì)算機(jī)圖形技術(shù)人員的參考資料。
本書是一本內(nèi)容豐富、取材新穎的計(jì)算機(jī)圖形學(xué)著作,在其前一版的基礎(chǔ)上進(jìn)行了全面擴(kuò)充,增加了許多新的內(nèi)容,覆蓋了計(jì)算機(jī)圖形學(xué)的相關(guān)發(fā)展和成就。全書層次分明、重點(diǎn)突出,并附有使用OpenGL編寫的大量程序及各種效果圖,是一本難得的優(yōu)秀教材。全書分為24章及3個(gè)附錄,全面系統(tǒng)地講解了計(jì)算機(jī)圖形學(xué)的基本概念和相關(guān)技術(shù)。作者首先對(duì)計(jì)算機(jī)圖形學(xué)進(jìn)行綜述;然后講解二維圖形的對(duì)象表示、算法和應(yīng)用,以及三維圖形的相關(guān)技術(shù)、建模和變換等;接著介紹光照模型、顏色模型和動(dòng)畫技術(shù);最后的附錄給出了計(jì)算機(jī)圖形學(xué)中用到的基本數(shù)學(xué)概念、圖形文件格式及OpenGL的相關(guān)內(nèi)容。
Donald Hearn 從1985年開始任教于美國(guó)伊利諾伊大學(xué)Urbana-Champaigh分校的計(jì)算機(jī)科學(xué)系。Hearn博士擔(dān)任過多門課程的教學(xué)工作,包括計(jì)算機(jī)圖形學(xué)、科學(xué)計(jì)算可視化、計(jì)算科學(xué)、數(shù)學(xué)和應(yīng)用科學(xué)等。他還指導(dǎo)過多個(gè)研究項(xiàng)目并在相關(guān)領(lǐng)域發(fā)表了許多學(xué)術(shù)論文。M. Pauline Baker是美國(guó)印第安納大學(xué)-普度大學(xué)Indianapolis聯(lián)合分校(IUPUI)信息學(xué)院的教授。Baker教授主持印第安納大學(xué)可視化和交互空間滲透技術(shù)實(shí)驗(yàn)室的相關(guān)工作,也是伊利諾伊大學(xué)美國(guó)國(guó)家超級(jí)計(jì)算應(yīng)用中心(NCSA)的主任。Baker教授在康奈爾大學(xué)獲得心理學(xué)學(xué)士學(xué)位,在Syracuse大學(xué)獲得教育學(xué)碩士學(xué)位,并在伊利諾伊大學(xué)獲得計(jì)算機(jī)科學(xué)博士學(xué)位。Warren R. Carithers于1981年加入美國(guó)羅切斯特理工大學(xué)計(jì)算機(jī)科學(xué)系。除了擔(dān)任多個(gè)院系計(jì)算機(jī)圖形學(xué)課程的授課,Carithers教授還講授其他領(lǐng)域的課程,包括操作系統(tǒng)、計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)與組織、系統(tǒng)軟件、編程語(yǔ)言設(shè)計(jì)和計(jì)算機(jī)安全等。<BR>Donald Hearn 從1985年開始任教于美國(guó)伊利諾伊大學(xué)Urbana-Champaigh分校的計(jì)算機(jī)科學(xué)系。Hearn博士擔(dān)任過多門課程的教學(xué)工作,包括計(jì)算機(jī)圖形學(xué)、科學(xué)計(jì)算可視化、計(jì)算科學(xué)、數(shù)學(xué)和應(yīng)用科學(xué)等。他還指導(dǎo)過多個(gè)研究項(xiàng)目并在相關(guān)領(lǐng)域發(fā)表了許多學(xué)術(shù)論文。M. Pauline Baker是美國(guó)印第安納大學(xué)-普度大學(xué)Indianapolis聯(lián)合分校(IUPUI)信息學(xué)院的教授。Baker教授主持印第安納大學(xué)可視化和交互空間滲透技術(shù)實(shí)驗(yàn)室的相關(guān)工作,也是伊利諾伊大學(xué)美國(guó)國(guó)家超級(jí)計(jì)算應(yīng)用中心(NCSA)的主任。Baker教授在康奈爾大學(xué)獲得心理學(xué)學(xué)士學(xué)位,在Syracuse大學(xué)獲得教育學(xué)碩士學(xué)位,并在伊利諾伊大學(xué)獲得計(jì)算機(jī)科學(xué)博士學(xué)位。Warren R. Carithers于1981年加入美國(guó)羅切斯特理工大學(xué)計(jì)算機(jī)科學(xué)系。除了擔(dān)任多個(gè)院系計(jì)算機(jī)圖形學(xué)課程的授課,Carithers教授還講授其他領(lǐng)域的課程,包括操作系統(tǒng)、計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)與組織、系統(tǒng)軟件、編程語(yǔ)言設(shè)計(jì)和計(jì)算機(jī)安全等。
Brief Contents
1 A Survey of Computer Graphics 25 2 Computer Graphics Hardware 33 3 Computer Graphics Software 59 4 Graphics Output Primitives 75 5 Attributes of Graphics Primitives 129 6 Implementation Algorithms for Graphics Primitives and Attributes 161 7 Two-Dimensional Geometric Transformations 219 8 Two-Dimensional Viewing 257 9 Three-Dimensional Geometric Transformations 303 10 Three-Dimensional Viewing 331 11 Hierarchical Modeling 383 12 Computer Animation 393 13 Three-Dimensional Object Representations 417 14 Spline Representations 435 15 Other Three-Dimensional Object Representations 491 16 Visible-Surface Detection Methods 503 17 Illumination Models and Surface-Rendering Methods 531 18 Texturing and Surface-Detail Methods 579 19 Color Models and Color Applications 603 20 Interactive Input Methods and Graphical User Interfaces 623 21 Global Illumination 663 22 Programmable Shaders 689 23 Algorithmic Modeling 719 24 Visualization of Data Sets 749 Contents 1 A Survey of Computer Graphics 25 1-1 Graphs and Charts 26 1-2 Computer-Aided Design 26 1-3 Virtual-Reality Environments 28 1-4 Data Visualizations 28 1-5 Education and Training 29 1-6 Computer Art 29 1-7 Entertainment 30 1-8 Image Processing 31 1-9 Graphical User Interfaces 31 1-10 Summary 32 2 Computer Graphics Hardware 33 2-1 Video Display Devices 34 2-2 Raster-Scan Systems 46 2-3 GraphicsWorkstations and Viewing Systems 49 2-4 Input Devices 50 2-5 Hard-Copy Devices 54 2-6 Graphics Networks 56 2-7 Graphics on the Internet 56 2-8 Summary 57 3 Computer Graphics Software 59 3-1 Coordinate Representations 60 3-2 Graphics Functions 61 3-3 Software Standards 62 3-4 Other Graphics Packages 63 3-5 Introduction to OpenGL 64 3-6 Summary 72 4 Graphics Output Primitives 75 4-1 Coordinate Reference Frames 76 4-2 Specifying A Two-Dimensional World-Coordinate Reference Frame in OpenGL 78 4-3 OpenGL Point Functions 79 4-4 OpenGL Line Functions 81 4-5 OpenGL Curve Functions 82 4-6 Fill-Area Primitives 83 4-7 Polygon Fill Areas 84 4-8 OpenGL Polygon Fill-Area Functions 94 4-9 OpenGL Vertex Arrays 100 4-10 Pixel-Array Primitives 102 4-11 OpenGL Pixel-Array Functions 103 4-12 Character Primitives 107 4-13 OpenGL Character Functions 109 4-14 Picture Partitioning 110 4-15 OpenGL Display Lists 111 4-16 OpenGL Display-Window Reshape Function 113 4-17 Summary 116 5 Attributes of Graphics Primitives 129 5-1 OpenGL State Variables 130 5-2 Color and Grayscale 130 5-3 OpenGL Color Functions 133 5-4 Point Attributes 139 5-5 OpenGL Point-Attribute Functions 139 5-6 Line Attributes 139 5-7 OpenGL Line-Attribute Functions 141 5-8 Curve Attributes 143 5-9 Fill-Area Attributes 144 5-10 OpenGL Fill-Area Attribute Functions 145 5-11 Character Attributes 150 5-12 OpenGL Character-Attribute Functions 153 5-13 OpenGL Antialiasing Functions 153 5-14 OpenGL Query Functions 154 5-15 OpenGL Attribute Groups 155 5-16 Summary 155 6 Implementation Algorithms for Graphics Primitives and Attributes 161 6-1 Line-Drawing Algorithms 162 6-2 Parallel Line Algorithms 168 6-3 Setting Frame-Buffer Values 170 6-4 Circle-Generating Algorithms 171 6-5 Ellipse-Generating Algorithms 177 6-6 Other Curves 184 6-7 Parallel Curve Algorithms 187 6-8 Pixel Addressing and Object Geometry 187 6-9 Attribute Implementations for Straight-Line Segments and Curves 190 6-10 General Scan-Line Polygon-Fill Algorithm 195 6-11 Scan-Line Fill of Convex Polygons 199 6-12 Scan-Line Fill for Regions with Curved Boundaries 200 6-13 Fill Methods for Areas with Irregular Boundaries 200 6-14 Implementation Methods for Fill Styles 204 6-15 Implementation Methods for Antialiasing 207 6-16 Summary 214 7 Two-Dimensional Geometric Transformations 219 7-1 Basic Two-Dimensional Geometric Transformations 220 7-2 Matrix Representations and Homogeneous Coordinates 225 7-3 Inverse Transformations 228 7-4 Two-Dimensional Composite 7-5 Other Two-Dimensional Transformations 240 7-6 Raster Methods for Geometric Transformations 244 7-7 OpenGL Raster Transformations 245 7-8 Transformations between Two-Dimensional Coordinate Systems 246 7-9 OpenGL Functions for Two-Dimensional Geometric Transformations 248 7-10 OpenGL Geometric-Transformation Programming Examples 252 7-11 Summary 253 8 Two-Dimensional Viewing 257 8-1 The Two-Dimensional Viewing Pipeline 258 8-2 The ClippingWindow 259 8-3 Normalization and Viewport Transformations 261 8-4 OpenGL Two-Dimensional Viewing Functions 265 8-5 Clipping Algorithms 274 8-6 Two-Dimensional Point Clipping 274 8-7 Two-Dimensional Line Clipping 275 8-8 Polygon Fill-Area Clipping 287 8-9 Curve Clipping 296 8-10 Text Clipping 297 8-11 Summary 298 9 Three-Dimensional Geometric Transformations 303 9-1 Three-Dimensional Translation 304 9-2 Three-Dimensional Rotation 305 9-3 Three-Dimensional Scaling 317 9-4 Composite Three-Dimensional Transformations 319 9-5 Other Three-Dimensional Transformations 322 9-6 Transformations between Three- Dimensional Coordinate Systems 323 9-7 Affine Transformations 324 9-8 OpenGL Geometric-Transformation Functions 324 9-9 OpenGL Three-Dimensional Geometric-Transformation Programming Examples 326 9-10 Summary 327 10 Three-Dimensional Viewing 331 10-1 Overview of Three-Dimensional Viewing Concepts 332 10-2 The Three-Dimensional Viewing Pipeline 334 10-3 Three-Dimensional Viewing-Coordinate Parameters 336 10-4 Transformation from World to Viewing Coordinates 338 10-5 Projection Transformations 340 10-6 Orthogonal Projections 340 10-7 Oblique Parallel Projections 345 10-8 Perspective Projections 351 10-9 The Viewport Transformation and Three-Dimensional Screen Coordinates 365 10-10 OpenGL Three-Dimensional Viewing Functions 365 10-11 Three-Dimensional Clipping Algorithms 371 10-12 OpenGL Optional Clipping Planes 379 10-13 Summary 380 11 Hierarchical Modeling 383 11-1 Basic Modeling Concepts 384 11-2 Modeling Packages 387 11-3 General Hierarchical Modeling Methods 387 11-4 Hierarchical Modeling Using OpenGL Display Lists 390 11-5 Summary 391 12 Computer Animation 393 12-1 Raster Methods for Computer Animation 394 12-2 Design of Animation Sequences 396 12-3 Traditional Animation Techniques 397 12-4 General Computer-Animation Functions 398 12-5 Computer-Animation Languages 398 12-6 Key-Frame Systems 399 12-7 Motion Specifications 404 12-8 Character Animation 406 12-9 Periodic Motions 408 12-10 OpenGL Animation Procedures 409 12-11 Summary 412 13 Three-Dimensional Object Representations 417 13-1 Polyhedra 418 13-2 OpenGL Polyhedron Functions 418 13-3 Curved Surfaces 421 13-4 Quadric Surfaces 422 13-5 Superquadrics 424 13-6 OpenGL Quadric-Surface and Cubic-Surface Functions 425 13-7 Summary 431 14 Spline Representations 435 14-1 Interpolation and Approximation Splines 436 14-2 Parametric Continuity Conditions 437 14-3 Geometric Continuity Conditions 438 14-4 Spline Specifications 439 14-5 Spline Surfaces 440 14-6 Trimming Spline Surfaces 440 14-7 Cubic-Spline Interpolation Methods 441 14-8 Bézier Spline Curves 447 14-9 Bézier Surfaces 455 14-10 B-Spline Curves 457 14-11 B-Spline Surfaces 466 14-12 Beta-Splines 466 14-13 Rational Splines 467 14-14 Conversion Between Spline Representations 469 14-15 Displaying Spline Curves and Surfaces 470 14-16 OpenGL Approximation-Spline Functions 474 14-17 Summary 485 15 Other Three-Dimensional Object Representations 491 15-1 Blobby Objects 492 15-2 Sweep Representations 493 15-3 Constructive Solid-Geometry Methods 494 15-4 Octrees 496 15-5 BSP Trees 498 15-6 Physically Based Modeling 499 15-7 Summary 500 16 Visible-Surface Detection Methods 503 16-1 Classification of Visible-Surface Detection Algorithms 504 16-2 Back-Face Detection 504 16-3 Depth-Buffer Method 505 16-4 A-Buffer Method 508 16-5 Scan-Line Method 510 16-6 Depth-Sorting Method 511 16-7 BSP-Tree Method 514 16-8 Area-Subdivision Method 515 16-9 Octree Methods 517 16-10 Ray-Casting Method 518 16-11 Comparison of Visibility-Detection Methods 519 16-12 Curved Surfaces 520 16-13 Wire-Frame Visibility Methods 521 16-14 OpenGL Visibility-Detection Functions 523 16-15 Summary 526 17 Illumination Models and Surface-Rendering Methods 531 17-1 Light Sources 532 17-2 Surface Lighting Effects 536 17-3 Basic Illumination Models 537 17-4 Transparent Surfaces 546 17-5 Atmospheric Effects 549 17-6 Shadows 550 17-7 Camera Parameters 550 17-8 Displaying Light Intensities 550 17-9 Halftone Patterns and Dithering Techniques 553 17-10 Polygon Rendering Methods 559 17-11 OpenGL Illumination and Surface-Rendering Functions 564 17-12 Summary 575 18 Texturing and Surface-Detail Methods 579 18-1 Modeling Surface Detail with Polygons 580 18-2 Texture Mapping 580 18-3 Bump Mapping 585 18-4 Frame Mapping 586 18-5 OpenGL Texture Functions 587 18-6 Summary 599 19 Color Models and Color Applications 603 19-1 Properties of Light 604 19-2 Color Models 606 19-3 Standard Primaries and the Chromaticity Diagram 607 19-4 The RGB Color Model 610 19-5 The YIQ and Related Color Models 612 19-6 The CMY and CMYK Color Models 613 19-7 The HSV Color Model 614 19-8 The HLS Color Model 618 19-9 Color Selection and Applications 619 19-10 Summary 619 20 Interactive Input Methods and Graphical User Interfaces 623 20-1 Graphical Input Data 624 20-2 Logical Classification of Input Devices 624 20-3 Input Functions for Graphical Data 627 20-4 Interactive Picture-Construction Techniques 629 20-5 Virtual-Reality Environments 632 20-6 OpenGL Interactive Input-Device Functions 632 20-7 OpenGL Menu Functions 648 20-8 Designing a Graphical User Interface 654 20-9 Summary 657 21 Global Illumination 663 21-1 Ray-Tracing Methods 664 21-2 Radiosity Lighting Model 678 21-3 Environment Mapping 684 21-4 Photon Mapping 685 21-5 Summary 686 22 Programmable Shaders 689 22-1 A History of Shading Languages 690 22-2 The OpenGL Pipeline 694 22-3 The OpenGL Shading Language 697 22-4 Shader Effects 707 22-5 Summary 717 23 Algorithmic Modeling 719 23-1 Fractal-Geometry Methods 720 23-2 Particle Systems 743 23-3 Grammar-Based Modeling Methods 744 23-4 Summary 746 24 Visualization of Data Sets 749 24-1 Visual Representations for Scalar Fields 750 24-2 Visual Representations for Vector Fields 752 24-3 Visual Representations for Tensor Fields 752 24-4 Visual Representations for Multivariate Data Fields 753 24-5 Summary 753 A Mathematics for Computer Graphics 755 A-1 Coordinate Reference Frames 755 A-2 Points and Vectors 759 A-3 Tensors 763 A-4 Basis Vectors and the Metric Tensor 763 A-5 Matrices 766 A-6 Complex Numbers 769 A-7 Quaternions 771 A-8 Nonparametric Representations 772 A-9 Parametric Representations 773 A-10 Rate-of-Change Operators 774 A-11 Rate-of-Change Integral Transformation Theorems 776 A-12 Area and Centroid of a Polygon 779 A-13 Calculating Properties of Polyhedra 781 A-14 Numerical Methods 782 B Graphics File Formats 791 B-1 Image-File Configurations 791 B-2 Color-Reduction Methods 792 B-3 File-Compression Techniques 793 B-4 Composition of the Major File Formats 800 B-5 Summary 805 C The World of OpenGL 807 C-1 The Evolution of OpenGL 807 C-2 OpenGL beyond C and C++ 816 C-3 GPU Architecture, Past, Present, and Future 827 Bibliography 837 Index 849 OpenGL Function Index 861
你還可能感興趣
我要評(píng)論
|