CONTENTS
Chapter 1 Introduction To Computer Graphics 1
1-1 Overview of Computer Graphics 3
1-2 Representing Pictures 3
1-3 Preparing Pictures For Presentation 5
1-4 Presenting Previously Prepared Pictures 6
1-5 Interacting with the Picture 9
1-6 Description of Some Graphics Devices 18
1-7 Storage Tube Graphics Displays 18
1-8 Calligraphic Refresh Graphics Displays 19
1-9 Raster Refresh Graphics Displays 24
1-10 Cathode Ray Tube Basics 30
1-11 Color CRT Raster Scan Basics 31
1-12 Video Basics 32
1-13 Flat Panel Displays 35
1-14 Electrostatic Plotters 42
1-15 Laser Printers 44
1-16 Dot Matrix Plotters 47
1-17 Ink Jet Plotters 49
1-18 Thermal Plotters 50
1-19 Pen and Ink Plotters 52
1-20 Color Film Cameras 56
1-21 Active and Passive Graphics Devices 57
1-22 Computer Graphics Software 58
1-23 References 59
Chapter 2 Two-Dimensional Transformations 61
2-1 Introduction 61
2-2 Representation of Points 61
2-3 Transformations and Matrices 62
2-4 Transformation of Points 62
2-5 Transformation of Straight Lines 65
2-6 Midpoint Transformation 66
2-7 Transformation of Parallel Lines 68
2-8 Transformation of Intersecting Lines 69
2-9 Rotation 72
2-10 Reflection 76
2-11 Scaling 78
2-12 Combined Transformations 80
2-13 Transformation of The Unit Square 83
2-14 Solid Body Transformations 86
2-15 Translations and Homogeneous Coordinates 87
2-16 Rotation About an Arbitrary Point 88
2-17 Reflection Through an Arbitrary Line 89
2-18 Projection - A Geometric Interpretation of Homogeneous Coordinates 90
2-19 Overall Scaling 94
2-20 Points At Infinity 95
2-21 Transformation Conventions 98
2-22 References 100
Chapter 3 Three-Dimensional Transformations 101
3-1 Introduction 101
3-2 Three-Dimensional Scaling 102
3-3 Three-Dimensional Shearing 106
3-4 Three-Dimensional Rotation 107
3-5 Three-Dimensional Reflection 113
3-6 Three-Dimensional Translation 115
3-7 Multiple Transformations 115
3-8 Rotations About an Axis Parallel to a Coordinate Axis 117
3-9 Rotation About an Arbitrary Axis in Space 121
3-10 Reflection Through an Arbitrary Plane 128
3-11 Affine and Perspective Geometry 132
3-12 Orthographic Projections 135
3-13 Axonometric Projections 141
3-14 Oblique Projections 151
3-15 Perspective Transformations 157
3-16 Techniques For Generating Perspective Views 171
3-17 Vanishing Points 179
3-18 Photography and The Perspective Transformation 185
3-19 Stereographic Projection 187
3-20 Comparison of Object Fixed and Center of Projection Fixed Projections 195
3-21 Reconstruction of Three-Dimensional Images 200
3-22 References 206
Chapter 4 Plane Curves 207
4-1 Introduction 207
4-2 Curve Representation 207
4-3 Nonparametric Curves 209
4-4 Parametric Curves 211
4-5 Parametric Representation of a Circle 215
4-6 Parametric Representation of an Ellipse 218
4-7 Parametric Representation of a Parabola 223
4-8 Parametric Representation of a Hyperbola 227
4-9 A Procedure For Using Conic Sections 231
4-10 The General Conic Equations 231
4-11 References 246
Chapter 5 Space Curves 247
5-1 Introduction 247
5-2 Representation of Space Curves 248
5-3 Cubic Splines 250
5-4 Normalized Cubic Splines 267
5-5 Alternate Cubic Spline End Conditions 271
5-6 Parabolic Blending 278
5-7 Generalized Parabolic Blending 284
5-8 Bezier Curves 289
5-9 B-spline Curves 305
5-10 End Conditions For Periodic B-spline Curves 339
5-11 B-spline Curve Fit 346
5-12 B-spline Curve Subdivision 351
5-13 Rational B-spline Curves 356
5-14 References 375
Chapter 6 Surface Description and Generation 379
6-1 Introduction 379
6-2 Surfaces of Revolution 380
6-3 Sweep Surfaces 394
6-4 Quadric Surfaces 400
6-5 Piecewise Surface Representation 408
6-6 Mapping Parametric Surfaces 411
6-7 Bilinear Surface 414
6-8 Ruled and Developable Surfaces 417
6-9 Linear Coons Surface 422
6-10 Coons Bicubic Surface 426
6-11 Bezier Surfaces 435
6-12 B-spline Surfaces 445
6-13 B-spline Surface Fitting 456
6-14 B-spline Surface Subdivision 458
6-15 Gaussian Curvature and Surface Fairness 461
6-16 Rational B-spline Surfaces 465
6-17 References 477
Appendices 481
Appendix A Computer Graphics Software 481
Appendix B Matrix Methods 503
Appendix C Pseudocode 507
Appendix D B-Spline Surface File Format 513
Appendix E Problems 517
Appendix F Programming Projects 527
Appendix G Algorithms 541
|