CHAPTER 1 INTRODUCTION 1
1.1 A Mini-survey 1
1.2 What's Ahead 5
CHAPTER 2 IMAGE REPRESENTATION 6
2.1 The RGB Color Model 7
2.2 Direct Coding 8
2.3 Lookup Table 9
2.4 Display Monitor 9
2.5 Printer 11
2.6 Image Files 14
2.7 Setting the Color Attribute of Pixels 15
2.8 Example:Visualizing the Mandelbrot Set 16
CHAPTER 3 SCAN CONVERSION 25
3.1 Scan-Converting a Point 25
3.2 Scan-Converting a Line 26
3.3 Scan-Converting a Circle 29
3.4 Scan-Converting an Ellipse 35
3.5 Scan-Converting Arcs and Sectors 40
3.6 Scan-Converting a Rectangle 41
3.7 Region Filling 42
3.8 Scan-Converting a Character 45
3.9 Anti-Aliasing 47
3.10 Example:Recursively Defined Drawings 51
4.1 Geometric Transformations 68
CHAPTER 4 TWO-DIMENSIONAL TRANSFORMATIONS 68
4.2 Coordinate Transformations 71
4.3 Composite Transformations 73
4.4 Instance Transformations 76
CHAPTER 5 TWO-DIMENSIONAL VIEWING AND CLIPPING 89
5.1 Window-to-Viewport Mapping 90
5.2 Point Clipping 91
5.3 Line Clipping 91
5.4 Polygon Clipping 96
5.5 Example:A 2D Graphics Pipeline 99
6.1 Geometric Transformations 114
CHAPTER 6 THREE-DIMENSIONAL TRANSFORMATIONS 114
6.2 Coordinate Transformations 117
6.3 Composite Transformations 117
6.4 Instance Transformations 118
CHAPTER 7 MATHEMATICS OF PROJECTION 128
7.1 Taxonomy of Projection 129
7.2 Perspective Projection 129
7.3 Parallel Projection 132
CHAPTER 8 THREE-DIMENSIONAL VIEWING AND CLIPPING 151
8.1 Three-Dimensional Viewing 151
8.2 Clipping 155
8.3 Viewing Transformation 158
8.4 Example:A 3D Graphics Pipeline 159
CHAPTER 9 GEOMETRIC REPRESENTATION 174
9.1 Simple Geometric Forms 174
9.2 Wireframe Models 175
9.3 Curved Surfaces 176
9.4 Curve Design 176
9.5 Polynomial Basis Functions 177
9.6 The Problem of Interpolation 179
9.7 The Problem of Approximation 181
9.8 Curved-Surface Design 184
9.9 Transforming Curves and Surfaces 186
9.10 Quadric Surfaces 186
9.11 Example:Terrain Generation 189
CHAPTER 10 HIDDEN SURFACES 197
10.1 Depth Comparisons 197
10.2 Z-Buffer Algorithm 199
10.3 Back-Face Removal 200
10.4 The Painter's Algorithm 200
10.5 Scan-Line Algorithm 203
10.6 Subdivision Algorithm 207
10.7 Hidden-Line Elimination 209
10.8 The Rendering of Mathematical Surfaces 209
CHAPTER 11 COLOR AND SHADING MODELS 229
11.1 Light and Color 229
11.2 The Phong Model 234
11.3 Interpolative Shading Methods 236
11.4 Texture 239
CHAPTER 12 RAY TRACING 251
12.1 The Pinhole Camera 251
12.2 A Recursive Ray-Tracer 252
12.3 Parametric Vector Representation of a Ray 253
12.4 Ray-Surface Intersection 256
12.5 Execution Efficiency 258
12.6 Anti-Aliasing 260
12.7 Additional Visual Effects 261
A1.1 The Two-Dimensional Cartesian Coordinate System 273
Appendix 1 MATHEMATICS FOR TWO-DIMENSIONAL COMPUTER GRAPHICS 273
A1.2 The Polar Coordinate System 277
A1.3 Vectors 278
A1.4 Matrices 281
A1.5 Functions and Transformations 283
Appendix 2 MATHEMATICS FOR THREE-DIMENSIONAL COMPUTER GRAPHICS 298
A2.1 Three-Dimensional Cartesian Coordinates 298
A2.2 Curves and Surfaces in Three Dimensions 300
A2.3 Vectors in Three Dimensions 303
A2.4 Homogeneous Coordinates 307
ANSWERS TO SUPPLEMENTARY PROBLEMS 321
INDEX 342