作者 |
Donald Hearn (美)Donald Hearn, M. Pauline Baker, Warren R. Carithers |
丛书名 |
国外计算机科学教材系列 |
出版社 |
电子工业出版社 |
ISBN |
9787121408373 |
简要 |
简介 |
内容简介 本书是一本内容丰富、取材新颖的计算机图形学著作,在其前一版的基础上进行了全面扩充,增加了许多新的内容,覆盖了计算机图形学的相关发展和成就。全书层次分明、重点突出,并附有使用OpenGL编写的大量程序及各种效果图,是一本难得的优秀教材。全书分为24章及3个附录,全面系统地讲解了计算机图形学的基本概念和相关技术。作者首先对计算机图形学进行综述;然后讲解二维图形的对象表示、算法和应用,以及三维图形的相关技术、建模和变换等;接着介绍光照模型、颜色模型和动画技术;*后的附录给出了计算机图形学中用到的基本数学概念、图形文件格式及OpenGL的相关内容。 |
目录 |
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 A |