logo资料库

Computer Graphics C Version 2Ed by Donald Hearn.pdf )

第1页 / 共662页
第2页 / 共662页
第3页 / 共662页
第4页 / 共662页
第5页 / 共662页
第6页 / 共662页
第7页 / 共662页
第8页 / 共662页
资料共662页,剩余部分请下载后查看
Computer Graphics, C Version (2nd Ed.)
Contents
Ch1 A Survey of Computer Graphics
1.1 Computer-Aided Design
1.2 Presentation Graphics
1.3 Computer Art
1.4 Entertainment
1.5 Education & Training
1.6 Visualization
1.7 Image Processing
1.8 Graphical User Interfaces
Ch2 Overview of Graphics Systems
2.1 Video Display Devices
2.2 Raster-Scan Systems
2.3 Random-Scan Systems
2.4 Graphics Monitors & Workstations
2.5 Input Devices
2.6 Hard-Copy Devices
2.7 Graphics Software
Summary
References
Exercise
Ch3 Output Primitives
3.1 Points & Lines
3.2 Line-Drawing Algorithms
3.3 Loading the Frame Buffer
3.4 Line Function
3.5 Circle-Generating Algorithms
3.6 Ellipse-Generating Algorithms
3.7 Other Curves
3.8 Parallel Curve Algorithms
3.9 Curve Functions
3.10 Pixel Addressing & Object Geometry
3.11 Filled-Area Primitives
3.12 Fill-Area Functions
3.13 Cell Array
3.14 Character Generation
Summary
Applications
References
Exercises
Ch4 Attributes of Output Primitives
4.1 Line Attributes
4.2 Curve Attributes
4.3 Color & Grayscale Levels
4.4 Area-Fill Attributes
4.5 Character Attributes
4.6 Bundled Attributes
4.7 Inquiry Functions
4.8 Antialiasing
Summary
References
Exercises
Ch5 Two-Dimensional Geometric Transformations
5.1 Basic Transformations
5.2 Matrix Representations & Homogeneous Coordinates
5.3 Composite Transformations
5.4 Other Transformations
5.5 Transformations between Coordinate Systems
5.6 Affine Transformations
5.7 Tansformation Functions
5.8 Raster Methods for Transformations
Summary
References
Exercises
Ch6 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
6.8 Polygon Clipping
6.9 Curve Clipping
6.10 Text Clipping
6.11 Exterior Clipping
Summary
References
Exercises
Ch7 Structures & Hierarchical Modeling
7.1 Structure Concepts
7.2 Editing Structures
7.3 Basic Modeling Concepts
7.4 Hierarchical Modeling with Structures
Summary
References
Exercises
Ch8 Graphic User Interfaces & Interactive Input Methods
8.1 The User Dialogue
8.2 Input of Graphical Data
8.3 Input Functions
8.4 Initial Values for Input-Device Parameters
8.5 Interactive Picture-Construction Techniques
8.6 Virtual-Reality Environments
Summary
References
Exercises
Ch9 Three Dimensional Concepts
9.1 Three-Dimensional Display Methods
9.2 Three-Dimensional Graphics Packages
Ch10 Three-Dimensional Object Representations
10.1 Polygon Surfaces
10.2 Curved Lines & Surfaces
10.3 Quadric Surfaces
10.4 Superquadrics
10.5 Blobby Objects
10.6 Spline Representations
10.7 Cubic Spline Interpolation Methods
10.8 Bezier Curves & Surfaces
10.9 B-Spline Curves & Surfaces
10.10 Beta-Splines
10.11 Rational Splines
10.12 Conversion between Spline Representations
10.13 Displaying Spline Curves & Surfaces
10.14 Sweep Representaions
10.15 Constructive Solid-Geometry Methods
10.16 Octrees
10.17 BSP Trees
10.18 Fractal-Geometry Methods
10.19 Shape Grammars & Other Procedural Methods
10.20 Particle Systems
10.21 Physically Based Modeling
10.22 Visualization of Data Sets
Summary
References
Exercises
Ch11 Three-Dimensional Geometric & Modeling Transformations
11.1 Translation
11.2 Rotation
11.3 Scaling
11.4 Other Transformations
11.5 Composite Transformations
11.6 Three-Dimensional Transformation Functions
11.7 Modeling & Coordinate Transformations
Summary
References
Exercises
Ch12 Three-Dimensional Viewing
12.1 Viewing Pipeline
12.2 Viewing Coordinates
12.3 Projections
12.4 View Volumes & General Projection Transformations
12.5 Clipping
12.6 Hardware Implementations
12.7 Three-Dimensional Viewing Functions
Summary
References
Exercises
Ch13 Visible-Surface Detection methods
13.1 Classification of Visible-Surface Detection Algorithms
13.2 Back-Face Detection
13.3 Depth-Buffer Method
13.4 A-Buffer Method
13.5 Scan-Line Method
13.6 Depth-Sorting Method
13.7 BSP-Tree Method
13.8 Area-Subdivision Method
13.9 Octree Methods
13.10 Ray-Casting Method
13.11 Curved Surfaces
13.12 Wireframe Methods
13.13 Visibility-Detection Functions
Summary
References
Exercises
Ch14 Illustration Models & Surface-Rendering Methods
14.1 Light Sources
14.2 Basic Illumination Models
14.3 Displaying Light Intensities
14.4 Halftone Patterns & Dithering Techniques
14.5 Polygon-Rendering Methods
14.6 Ray-Tracing Methods
14.7 Radiosity Lighting Model
14.8 Environment Mapping
14.9 Adding Surface Detail
Summary
References
Exercises
Ch15 Color Models & Color Applications
15.1 Properties of Light
15.2 Standard Primaries & Chromaticity Diagram
15.3 Intuitive Color Concepts
15.4 RGB Color Model
15.5 YIQ Color Model
15.6 CMY Color Model
15.7 HSV Color model
15.8 Conversion between HSV & RGB Models
15.9 HLS Color Model
15.10 Color Selection & Applications
Summary
References
Exercises
Ch16 Computer Animation
16.1 Design of Animation Sequences
16.2 General Computer-Animation Functions
16.3 Raster Animations
16.4 Computer-Animation Languages
16.5 Key-Frame Systems
16.6 Motion Specifications
Summary
References
Exercises
AppA Mathematics for Computer Graphics
A.1 Coordinate Reference Frames
A.2 Points & Vectors
A.3 Basis Vectors & the Metric Tensor
A.4 Matrices
A.5 Complex Numbers
A.6 Quaternions
A.7 Nonparametric Representations
A.8 Parametric Representations
A.9 Numerical Methods
Bibliography
Subject Index
Function Index
Contents PREFACE 1 A Survey of Computer Graphics Computer-Aided Design Presentation Graphics Computer Art Entertainment Education and Training Visualization Image Processing Graphical User Interfaces Overview of Graphics 2 systems 2-1 VideoDisplayDevices Refresh Cathode-Ray Tubes Raster-Scan Displays Random-Scan Displays Color CRT Monitors Direct-View Storage Tubes Flat-Panel Displays Three-Dimensional Viewing Devices xvii 2-2 2 2-3 'I 2-4 l 3 2-5 18 2 1 25 3 2 3 4 35 2-6 36 2-7 37 40 41 42 4.5 45 49 Stereoscopic and Virtual-Reality Systems Raster-Scan System!; 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 Summary References Exercises vii
Contents 3 Outout Primitives Points and Lines Line-Drawing Algorithms DDA Algorithm Bresenham's Line Algorithm Parallel Line Algorithms Loading the Frame Buffer Line Function Circle-Generating Algorithms Properties of Circles Midpoint Circle Algorithm Ellipse-Generating Algorithms Properties of Ellipses Midpoint Ellipse Algorithm Other Curves Conic Sections Polynomials and Spline Curves Parallel Curve Algorithms Curve Functions Pixel Addressing and Object Geometry Screen Grid Coordinates Maintaining Geometric Properties of Displayed Objects Filled-Area Primitives Scan-Line Polygon Fill Algorithm Inside-Outside Tests Scan-Line Fill of Curved Boundary Areas Boundary-Fill Algorithm Flood-Fill Algorithm Fill-Area Functions Cell Array Character Generation 83 Summary Applications References Exercises Attributes of Output Primitives 143 Line Attributes Line Type Line Width Pen and Brush Options Line Color Curve Attributes Color and Grayscale Levels Color Tables Grayscale Area-Fill Attributes Fill Styles Pattern Fill Soft Fill Character Attributes Text Attributes Marker Attributes Bundled Attributes Bundled Line Attributes Bundled Area-Fi Attributes Bundled Text Attributes Bundled Marker Attributes Inquiry Functions Antialiasing Supersampling Straight Line Segments Pixel-Weighting Masks
Area Sampling Straight Line Segments Filtering Techniques Pixel Phasing Compensating for Line lntensity Differences Antialiasing Area Boundaries Summary References Exercises Contents 5-6 Aff ine Transformations 174 5-7 Transformation Functions 174 5-8 Raster Methods for Transformations 1 75 Summary References Exercises 1 75 1 76 180 180 6 Viewing Two-Dimensional 208 208 210 212 21 3 213 21 6 6-1 The Viewing Pipeline 5 Two-Dimensional Geometric 6-2 Viewing Coordinate Reference Frame 183 6-3 Window-teviewport Coordinate Transformations Transformation 5-1 Basic Transformations Translation Rotation Scaling 5-2 Matrix Representations and Homogeneous Coordinates 5-3 Composite Transformations Translations Rotations Scalings General Pivot-Point Rotation General Fixed-Point Scaling General Scaling Directions Concatenation Properties General Composite Transformations and Computational Efficiency 5-4 Other Transformations Reflection Shear 5-5 Transformations Between Coordinate Systems 205 Two-Dimensional Wewing Functions Clipping Operations Point Clipping Line Clipping Cohen-Sutherland Line Clipping Liang-Barsky Line Clipping Nicholl-Lee-Nicholl Line Clipping Line Clipping Using Nonrectangular Clip Windows Splitting Concave Polygons Polygon Clipping Sutherland-Hodgernan Polygon Clipping Weiler-Atherton Polygon Clipping Other Polygon-Clipping Algorithms Curve Clipping Text Clipping Exterior Clipping Summary References Exercises
7 Structures and Hierarchical Modeling 250 7-1 Structure Concepts Basic Structure Functions Setting Structure Attributes 7-2 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 7-3 Basic Modeling Concepts Mode1 Representations Symbol Hierarchies Modeling Packages. 7-4 Hierarchical Modeling with Structures Local Coordinates and Modeling Transformations Modeling Transformations Structure Hierarchies Summary References Exercises 250 250 253 254 255 250 256 257 257 258 260 2 60 261 262 263 265 265 266 266 268 269 2 69 8-2 8-3 8-4 8-5 Graphical User Interfaces 8 and Interactive lnput Methods 271 8-1 The User Dialogue Windows and Icons Accommodating Multiple Skill Levels Consistency Minimizing Memorization Backup and Error Handling Feed back lnput of Graphical Data Logical Classification of Input Devices Locator Devices Stroke Devices String Devices Valuator Devices Choice Devices Pick Devices lnput Functions Input Modes Request Mode Locator and Stroke Input in Request Mode String Input in Request Mode Valuator Input in Request Mode Choice lnput in Request Mode Pick Input in Request Mode Sample Mode Event Mode Concurrent Use of Input Modes Initial Values for Input-Device Parameters lnteractive Picture-Construction Techniques Basic Positioning Methods Constraints Grids Gravity Field Rubber-Band Methods Dragging Painting and Drawing
8-6 Virtual-Reality Environments Summary References Exercises 292 10-4 233 294 294 10-5 10-6 9 Three-Dimensional Concepts 296 9-1 Three-Dimensional Display Methods Parallel Projection Perspective Projection Depth Cueing Visible Line and Surface Identification Surface Rendering Exploded and Cutaway Views Three-Dimensional and Stereoscopic Views 9-2 Three-Dimensional Graphics Packages 302 Three-Dimensional 10-1 10-2 10-3 Polygon Surfaces Polygon Tables Plane Equations Polygon Meshes Curved Lines and Surfaces Quadric Sutiaces 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 Ezier Curves Bezier Surfaces B-Spline Curves and Surfaces B-Spline Curves Uniform, Periodic B-Splines Cubic, Periodic €3-Splines Open, Uniform B-Splines Nonuniform 13-Splines B-Spline Surfaces Beta-Splines Beta-Spline Continuity Conditions Cubic, Periodic Beta-Spline Matrix Representation Rational Splines
Contents Conversion Between Spline Representations Displaying Spline Curves and Surfaces Homer's Rule Forward-Difference Calculations Subdivision Methods Sweep Representations Constructive Solid-Geometry Methods Octrees BSP Trees 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 Shape Grammars and Other Procedural Methods Particle Systems Physically Based Modeling Visualization of Data Sets Visual Representations for Scalar Fields VisuaI Representations for Vector Fields Visual Representations for Tensor Fields - xii Visual Representations for Multivariate Data Fields Summary References Exercises 402 404 404 404 Three-Dimensional 11 Geometric and Modeling Transformations 407 Translation Rotation Coordinate-Axes Rotations General Three-Dimensional Rotations Rotations with Quaternions Scaling Other Transformat~ons Reflections Shears Conlposite Transformations Three-Dimens~onal Transformation Functions Modeling and Coordinate Transformations Summary References Exercises 408 409 409 41 3 419 420 422 422 423 423 425 426 429 429 430 Three-Dimensional 12 Viewing 12-1 12-2 40 1 Viewing Pipeline Viewing Coordinates Specifying the Virbw Plane Transformation from World to Viewing Coordinates 43 1 432 433 433 437
Projections Parallel Projections Perspective IJrojections View Volumes and General Projection Transformations General Parallel-Projection Transformations General Perspective-Projection Transformations Clipping Normalized View Volumes Viewport Clipping Clipping in Homogeneous Coordinates Hardware Implementations Three-Dimensional Viewing Functions Summary References Exercises Visi ble-Su dace Detection Met hods 469 Classification of Visible-Surface D~tection Algorithms Back-Face Detection Depth-Buffer Method A-Buffer Method Scan-Line Method Depth-Sorting Method BSP-Tree Method Area-Subdivision Method Octree Methods Ray-Casting Met hod Curved Surfaces Curved-Surface Representations Surface Contour Plots Contents 1 3-1 2 Wireframe Methods 13-1 3 Visibility-Detection Functions Summary Keferences Exercises 490 490 49 1 492 49 2 lllumination Models 494 14 and Surface-Rendering Methods Light Sources Basic lllumination 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 Displaying Light Intensities Assigning Intensity Levels Gamma Correction and Video Lookup Tables Displaying Continuous-Tone Images Halftone Patterns and Dithering Techniques Halftone Approximations Dithering Techniques Polygon-Rendering Methods Constant-Intensity Shading Gouraud Shading Phong Shading
分享到:
收藏