TY - BOOK AU - Hearn, Donald TI - Computer graphics C version SN - 9788177587654 U1 - 006.6 PY - 2011/// CY - Delhi PB - Pearson KW - Computer graphics N1 - 1A Survey of Computer 1-1 Computer-Aided Design 24 1-2 Presentation Graphics 31 1-3 Computer Art 33 1-4 Entertainment 38 1-5 Education and Training 41 1-6 Visualization 45 1-7 Image Processing 52 1-8 Graphical User Interfaces 54 Overview of Graphics zSystems 55 2-1 Video Display Devices 56 Refresh Cathode-Ray Tubes 57 Raster-Scan Displays 60 Random-Scan Displays 61 Color CRT Monitors 62 Direct-View Storage Tubes 65 Flat-Panel Displays 65 Three-Dimensional Viewing Devices 69 Stereoscopic and Virtual-Reality Systems Raster-Scan Systems Video Controller Raster-Scan Display Processor Random-Scan Systems Graphics Monitors and Workstations Input Devices Keyboards Mouse Trackball and Spaceball Joysticks Data Glove Digitizers Image Scanners Touch Panels Light Pens Voice Systems Hard-Copy Devices Graphics Software Coordinate Representations Graphics Functions Software Standards PHIGS Workstations 3Output Primitives 103 Applications 3-1 Points and Lines 104 Exercises 160 3-2 Line-Drawing Algorithms DDA Algorithm Bresenham's Line Algorithm 108 Parallel Line Algorithms 112 Attributes of Output 4 3-3 Loading the Frame Buffer 114 Primitives 163 3-4 Line Function 3-5 Circle-Generating Algorithms 117 4-1 Line Attributes 164 Properties of Circles 117 Line Type 164 Midpoint Circle Algorithm 118 Line Width 166 3-6 Ellipse-Generating Algorithms 122 Pen and Brush Options Properties of Ellipses 122 Line Color 169 Midpoint Ellipse Algorithm 123 4-2 Curve Attributes 172 3-7 Other Curves 130 4-3 Color and Grayscale Levels 174 Conic Sections 130 Color Tables 175 Polynomials and Spline Curves 132 Grayscale 177 3-8 Parallel Curve Algorithms 132 4-4 Area-Fill Attributes 178 3-9 Curve Functions 133 Fill Stvles 178 3-10 Pixel Addressing Pattern Fill 179 and Object Geometry 134 Soft Fill 182 Screen Grid Coordinates 134 4-5 Character Attributes 183 Maintaining Geometric Properties Text Attributes 183 of Displayed Objects Marker Attributes 187 3-11 Filled-Area Primitives 137 4-6 Bundled Attributes 188 Scan-Line Polygon Fill Algorithm 137 Bundled Line Attributes Inside-Outside Tests 145 Bundled Area-Fill Attributes 189 Scan-Line Fill of Curved Boundary Bundled Text Attributes 189 Areas Bundled Marker Attributes 190 Boundary-Fill Algorithm 147 4-7 Inquiry Functions 190 Flood-Fill Algorithm 150 4-8 Antialiasing 191 3-12 Fill-Area Functions 151 Supersampling Straight Line 3-13 Cell Array 151 Segments 192 3-14 Character Generation 151 Pixel-Weighting Masks 194 Area Sampling Straight Line Segments Filtering Techniques Pixel Phasing Compensating for Line Intensity Differences Antialiasing Area Boundaries Two-Dimensional Geometric Transformations 203 Basic Transformations Translation Rotation Scaling Matrix Representations and Homogeneous Coordinates Composite Transformations Translations Rotations Scalings General Pivot-Point Rotation General Fixed-Point Scaling General Scaling Directions Concatenation Properties General Composite Transformations and Computational Efficiency Other Transformations Reflection Shear Transformations Between Coordinate Systems Affine Transformations Transformation Functions Raster Methods for Transformations Two-Dimensional Viewing 6-1 The Viewing Pipeline 6-2 Viewing Coordinate Reference Frame 6-3 Window-to-Viewport Coordinate Transformation 6-4 Two-Dimensional Viewing Functions 6-5 Clipping Operations 6-6 Point Clipping 6-7 Line Clipping Cohen-Sutherland Line Clipping Liang-Barsky Line Clipping Nicholl-Lee-Nicholl Line Clipping Line Clipping Using Nonrectangular Clip Windows Splitting Concave Polygons 6-8 Polygon Clipping Sutherland-Hodgeman Polygon Clipping Weiler-Atherton Polygon Clipping Other Polygon-Clipping Algorithms 6-9 Curve Clipping 6-10 Text Clipping 6-11 Exterior Clipping Structure Concepts Basic Structure Functions Setting Structure Attributes Editing Structures Structure Lists and the Element Pointer Setting the Edit Mode Inserting Structure Elements Replacing Structure Elements Deleting Structure Elements Labeling Structure Elements Copying Elements from One Structure to Another Basic Modeling Concepts Model Representations Symbol Hierarchies Modeling Packages Hierarchical Modeling with Structures Local Coordinates and Modeling Transformations Modeling Transformations Structure Hierarchies Graphical User Interfaces and Interactive Input Methods 291 The User Dialogue Windows and Icons Minimizing Memorization Backup and Error Handling Feedback Input of Graphical Data Logical Classification of Input Devices Locator Devices Stroke Devices String Devices Valuator Devices Choice Devices Pick Devices Input Functions Input Modes Request Mode Locator and Stroke Input in Request Mode String Input in Request Mode Valuator Input in Request Mode Choice Input in Request Mode Pick Input in Request Mode Sample Mode Event Mode Concurrent Use of Input Modes Initial Values for Input-Device Parameters Interactive Picture-Construction Techniques Basic Positioning Methods Constraints Grids Gravity Field Rubber-Band Methods Dragging Painting and Drawing Virtual-Reality Environments Three-Dimensional Concepts Three-Dimensional Display Methods 317 Parallel Projection 318 Perspective Projection 319 Depth Cueing 319 Visible Line and Surface Identification 320 Surface Rendering 320 Exploded and Cutaway Views 320 Three-Dimensional and Stereoscopic Views 320 Three-Dimensional Graphics Packages 322 Three-Dimensional Object Representations 324 10-1 Polygon Surfaces Polygon Tables Plane Equations Polygon Meshes 10-2 Curved Lines and Surfaces 10-3 Quadric Surfaces Sphere Ellipsoid Torus Superquadrics Superellipse Superellipsoid Blobby Objects Spline Representations Interpolation and Approximation Splines Parametric Continuity Conditions Geometric Continuity Conditions Spline Specifications Cubic Spline Interpolation Methods Natural Cubic Splines Hermite Interpolation Cardinal Splines Kochanek-Bartels Splines Bezier Curves and Surfaces Bezier Curves Properties of Bezier Curves Design Techniques Using Bezier Curves Cubic Bezier Curves Bezier Surfaces B-Spline Curves and Surfaces B-Spline Curves Uniform, Periodic B-Splines Cubic, Periodic B-Splines Open, Uniform B-Splines Nonuniform B-Splines B-Spline Surfaces Beta-Splines Beta-Spline Continuity Conditions Cubic, Periodic Beta-Spline Matrix Representation Rational Splines 10-12 Conversion Between Spline Representations 10-13 Displaying Spline Curves and Surfaces Homer's Rule Forward-Difference Calculations Subdivision Methods 10-14 Sweep Representations 10-15 Constructive Solid-Geometry Methods 10-16 Octrees 10-17 BSP Trees 10-18 Fractal-Geometry Methods Fractal-Generation Procedures Classification of Fractals Fractal Dimension Geometric Construction of Deterministic Self-Similar Fractals Geometric Construction of Statistically Self-Similar Fractals Affine Fractal-Construction Methods Random Midpoint-Displacement Methods Controlling Terrain Topography Self-Squaring Fractals Self-Inverse Fractals 10-19 Shape Grammars and Other Procedural Methods 10-20 Particle Systems 10-21 Physically Based Modeling 10-22 Visualization of Data Sets Visual Representations for Scalar Fields Visual Representations for Vector Fields Visual Representations for Tensor Fields Visual Representations for Multivariate Data Fields Three-Dimensional Geometric and Modeling Transformations 427 Translation ' 428 Rotation 429 Coordinate-Axes Rotations 429 General Three-Dimensional Rotations 433 Rotations with Quaternions 439 Scaling 440 Other Transformations 442 Reflections 442 Shears 443 Composite Transformations 443 Three-Dimensional Transformation Functions 445 Modeling and Coordinate Transformations 446 Three-Dimensional Viewing 451 12-1 Viewing Pipeline 12-2 Viewing Coordinates Specifying the View Plane Transformation from World to Viewing Coordinates 12-3 Projections 458 Parallel Projections 459 Perspective Projections 463 12-4 View Volumes and General Projection Transformations 467 General Parallel-Projection Transformations 472 General Perspective-Projection Transformations 474 12-5 Clipping 476 Normalized View Volumes 478 Viewport Clipping 480 Clipping in Homogeneous Coordinates 481 12-6 Hardware Implementations 483 12-7 Three-Dimensional Viewing Functions 484 Visible-Surface Detection 13 Methods 489 13-1 Classification of Visible-Surface Detection Algorithms 490 13-2 Back-Face Detection 491 13-3 Depth-Buffer Method 492 13-4 A-Buffer Method 495 13-5 Scan-Line Method 496 13-6 Depth-Sorting Method 498 13-7 BSP-Tree Method 501 13-8 Area-Subdivision Method 502 13-9 Octree Methods 505 13-10 Ray-Casting Method 507 13-11 Curved Surfaces 508 Curved-Surface Representations 508 Surface Contour Plots 509 Wireframe Methods 510 Visibility-Detection Functions 510 Illumination Models and Surface-Rendering Methods 514 14-1 Light Sources 14-2 Basic Illumination Models Ambient Light Diffuse Reflection Specular Reflection and the Phong Model Combined Diffuse and Specular Reflections with Multiple Light Sources Warn Model Intensity Attenuation Color Considerations Transparency Shadows 14-3 Displaying Light Intensities Assigning Intensity Levels Gamma Correction and Video Lookup Tables Displaying Continuous-Tone Images 14-4 Halftone Patterns and Dithering Techniques Halftone Approximations Dithering Techniques 14-5 Polygon-Rentiering Methods Constant-Intensity Shading Gouraud Shading Phong Shadiig Fast Phong Shading 546 14-6 Ray-Tracing Methods 547 Basic Ray-Tracing Algorithm 548 Ray-Surface Intersection Calculations 551 Reducing Object-Intersection Calculations 555 Space-Subdivision Methods 555 Antialiased Ray Tracing 558 Distributed Ray Tracing 560 14-7 Radiosity Lighting Model 564 Basic Radiosity Model 564 Progressive Refinement Radiosity Method 569 14-8 Environment Mapping 572 14-9 Adding Surface Detail 573 Modeling Surface Detail with Polygons 573 Texture Mapping 574 Procedural Texturing Methods 576 Bump Mapping 578 Frame Mapping 579 Summary 580 References 581 Exercises 582 f Color Models and Color 15f Applications 584 15-1 Properties of Light 585 15-2 Standard Primaries and the Chromaticity Diagram 588 XYZ Color Model 589 CIE Chromaticity Diagram 589 15-3 Intuitive Color Concepts 591 15-4 RGB Color Model 592 15-5 YIQ Color Model 594 15-6 CMY Color Model 594 15-7 HSV Color Model 595 15-8 Conversion Between HSV and RGB Models 598 15-9 HLS Color Model 599 15-10 Color Selection and Applications 600 Summary 601 References 601 Exercises 602 Computer Animation 603 Design of Animation Sequences 604 General Computer-Animation Functions 606 Raster Animations 606 Computer-Animation Languages 607 Key-Frame Systems 608 Morphing 608 Simulating Accelerations 611 Motion Specifications 614 Direct Motion Specification 614 Goal-Directed Systems 615 Kinematics and Dynamics 615 Summary 616 References 617 Exercises 617 Mathematics for Computer Graphics 619 A-1 Coordinate-ReftTence Frames Two-Dimensional Cartesian Reference Frames Polar Coordinates in the xy Plane Three-Dimensional Cartesian Reference Frames 622 Three-Dimensional Curvilinear Coordinate Systems 622 Solid Angle 624 A-2 Points and Vectors 625 Vector Addition and Scalar Multiplication 627 Scalar Product of Two Vectors 62 7 Vector Product of Two Vectors 628 A-3 Basis Vectors and the Metric Tensor 629 Orthonormal Basis 629 Metric Tensor 630 A-4 Matrices 631 Scalar Multiplication and Matrix Addition 632 Matrix Multiplication 632 Matrix Transpose 633 Determinant of a Matrix 633 Matrix Inverse 634 A-5 Complex Numbers 635 A-6 Quaternions 637 A-7 Nonparametric Representations 638 A-8 Parametric Representations 639 A-9 Numerical Methods 640 Solving Sets of Linear Equations 640 Finding Roots of Nonlinear Equations 641 Evaluating Integrals . 642 Fitting Curves to Data Sets 645 ER -