Computer graphics with OpenGL:
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Upper Saddle River, NJ
Pearson Education
2004
|
Ausgabe: | 3. ed., internat. ed. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XXII, 857 S. Ill, graph. Darst. |
ISBN: | 0131202383 |
Internformat
MARC
LEADER | 00000nam a2200000zc 4500 | ||
---|---|---|---|
001 | BV017253060 | ||
003 | DE-604 | ||
005 | 20041213 | ||
007 | t | ||
008 | 030624s2004 xxuad|| |||| 00||| eng d | ||
010 | |a 2003054898 | ||
020 | |a 0131202383 |9 0-13-120238-3 | ||
035 | |a (OCoLC)223678977 | ||
035 | |a (DE-599)BVBBV017253060 | ||
040 | |a DE-604 |b ger |e aacr | ||
041 | 0 | |a eng | |
044 | |a xxu |c US | ||
049 | |a DE-92 |a DE-29T |a DE-B768 |a DE-2070s | ||
050 | 0 | |a T385 | |
082 | 0 | |a 006.6 |2 21 | |
082 | 0 | |a 006.6 |2 22 | |
084 | |a ST 321 |0 (DE-625)143658: |2 rvk | ||
100 | 1 | |a Hearn, Donald |e Verfasser |4 aut | |
245 | 1 | 0 | |a Computer graphics with OpenGL |c Donald Hearn ; M. Pauline Baker |
250 | |a 3. ed., internat. ed. | ||
264 | 1 | |a Upper Saddle River, NJ |b Pearson Education |c 2004 | |
300 | |a XXII, 857 S. |b Ill, graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
630 | 0 | 4 | |a OpenGL |
650 | 4 | |a Computer graphics | |
650 | 0 | 7 | |a Computergrafik |0 (DE-588)4010450-3 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a OpenGL |0 (DE-588)4391716-1 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Computergrafik |0 (DE-588)4010450-3 |D s |
689 | 0 | 1 | |a OpenGL |0 (DE-588)4391716-1 |D s |
689 | 0 | |8 1\p |5 DE-604 | |
700 | 1 | |a Baker, M. Pauline |e Verfasser |4 aut | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010399370&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-010399370 | ||
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk |
Datensatz im Suchindex
_version_ | 1804130104511561728 |
---|---|
adam_text | Preface xix
|Q A Survey of Computer
Graphics 2
1 1 Graphs and Charts 3
1 2 Computer Aided Design 5
1 3 Virtual Reality Environments 10
1 4 Data Visualizations 12
1 5 Education and Training 19
1 6 Computer Art 23
1 7 Entertainment 28
1 8 Image Processing 31
1 9 Graphical User Interfaces 32
1 10 Summary 33
References 33
H^H Overview of Graphics
Systems 34
2 1 Video Display Devices 35
• Refresh Cathode Ray Tubes 36
• Raster Scan Displays 39
• Random Scan Displays 41
• Color CRT Monitors 42
• Flat Panel Displays 44
• Three Dimensional Viewing Devices 47
• Stereoscopic and Virtual Reality
Systems 48
2 2 Raster Scan Systems 50
• Video Controller 50
• Raster Scan Display Processor 52
2 3 Graphics Workstations and Viewing
Systems 54
2 4 Input Devices 57
• Keyboards, Button Boxes, and Dials 57
• Mouse Devices 57
• Trackballs and Spaceballs 59
• Joysticks 59
• Data Gloves 60
• Digitizers 60
• Image Scanners 62
• Touch Panels 64
• Light Pens 65
• Voice Systems 65
2 5 Hard Copy Devices 66
2 6 Graphics Networks 68
2 7 Graphics on the Internet 68
2 8 Graphics Software 69
• Coordinate Representations 69
• Graphics Functions 71
• Software Standards 72
• Other Graphics Packages 73
2 9 Introduction to OpenGL 73
• Basic OpenGL Syntax 74
• Related Libraries 74
• Header Files 75
• Display Window Management
Using GLUT 76
• A Complete OpenGL Program 77
viii Contents
2 10 Summary 81
References 82
Exercises 82
^^fl Graphics Output
Primitives 84
3 1 Coordinate Reference Frames 86
• Screen Coordinates 86
• Absolute and Relative Coordinate
Specifications 87
3 2 Specifying a Two Dimensional
World Coordinate Reference
Frame in OpenGL 87
3 3 OpenGL Point Functions 88
3 4 OpenGL Line Functions 91
3 5 Line Drawing Algorithms 92
• Line Equations 93
• DDA Algorithm 94
• Bresenham s Line Algorithm 95
• Displaying Polylines 99
3 6 Parallel Line Algorithms 99
3 7 Setting Frame Buffer Values 101
3 8 OpenGL Curve Functions 102
3 9 Circle Generating Algorithms 103
• Properties of Circles 103
• Midpoint Circle Algorithm 105
3 10 Ellipse Generating Algorithms 109
• Properties of Ellipses 109
• Midpoint Ellipse Algorithm 110
3 11 Other Curves 117
• Conic Sections 117
• Polynomials and Spline Curves 119
3 12 Parallel Curve Algorithms 119
3 13 Pixel Addressing and Object
Geometry 120
• Screen Grid Coordinates 120
• Maintaining Geometric Properties
of Displayed Objects 121
3 14 Fill Area Primitives 123
3 15 Polygon Fill Areas 124
• Polygon Classifications 124
• Identifying Concave Polygons 125
• Splitting Concave Polygons 125
• Splitting a Convex Polygon into a Set
of Triangles 127
• Inside Outside Tests 127
• Polygon Tables 129
• Plane Equations 131
• Front and Back Polygon
Faces 132
3 16 OpenGL Polygon Fill Area
Functions 134
3 17 OpenGL Vertex Arrays 139
3 18 Pixel Array Primitives 142
3 19 OpenGL Pixel Array
Functions 143
• OpenGL Bitmap Function 143
• OpenGL Pixmap Function 145
• OpenGL Raster Operations 146
3 20 Character Primitives 147
3 21 OpenGL Character Functions 149
3 22 Picture Partitioning 151
3 23 OpenGL Display Lists 151
• Creating and Naming an OpenGL
Display List 151
• Executing OpenGL Display Lists 152
• Deleting OpenGL Display Lists 153
3 24 OpenGL Display Window Reshape
Function 154
3 25 Summary 157
Example Programs 160
References 168
Exercises 168
^^M Attributes of Graphics
Primitives 172
4 1 OpenGL State Variables 174
4 2 Color and Gray Scale 174
• RGB Color Components 174
• Color Tables 175
• Grayscale 176
• Other Color Parameters 176
4 3 OpenGL Color Functions 177
• The OpenGL RGB and RGBA Color
Modes 177
• OpenGL Color Index Mode 178
• OpenGL Color Blending 179
• OpenGL Color Arrays 180
• Other OpenGL Color Functions 182
4 4 Point Attributes 183
4 3 Line Attributes 183
• Line Width 183
• Line Style 185
• Pen and Brush Options 186
4 6 Curve Attributes 187
4 7 OpenGL Point Attribute Functions 189
4 8 OpenGL Line Attribute Functions 190
• OpenGL Line Width Function 190
• OpenGL Line Style Function 190
• Other OpenGL Line Fffects 192
4 9 Fill Area Attributes 193
• Fill Styles 193
• Color Blended Fill Regions 194
4 10 General Scan Line Polygon Fill
Algorithm 196
4 11 Scan Line Fill of Convex Polygons 200
4 12 Scan Line Fill for Regions with
Curved Boundaries 201
4 13 Fill Methods for Areas with Irregular
Boundaries 201
• Boundary Fill Algorithm 201
• Flood Fill Algorithm 215
4 14 OpenGL Fill Area Attribute
Functions 203
• OpenGL Fill Pattern Function 206
• OpenGL Texture and Interpolation
Patterns 207
• OpenGL Wire Frame Methods 207
• OpenGL Front Face Function 210
4 13 Character Attributes 211
4 16 OpenGL Character Attribute
Functions 213
4 17 Antialiasing 214
• Supersampling Straight Line
Segments 215
• Subpixel Weighting Masks 217
• Area Sampling Straight Line
Segments 217
• Filtering Techniques 217
• Pixel Phasing 218
• Compensating for Line Intensity
Differences 218
• Antialiasing Area
Boundaries 219
4 18 OpenGI Antialiasing;
Functions 221
4 19 OpenCFQuen Functions 222
4 20 OpenGI Attribute Croups 223
4 21 Summary 224
References 226
Fxercises 227
^1 Geometric
Transformations 230
5 1 Basic Two Dimensional Geometric
Transformations 232
• Two Dimensional Translation 232
• Two Dimensional Rotation 234
• Two Dimensional Scaling 23h
5 2 Matrix Representations and
Homogeneous Coordinates 237
• Homogeneous coordinates 238
• Two Dimensional Translation
Matrix 234
• Two Dimensional Rotation
Matrix 239
• Two Dimensional Scaling
Matrix 239
3 3 Inverse Transformations 240
5 4 Two Dimensional Composite
Transformations 241
• Composite Two Dimensional
Translations 241
• Composite Two Dimensional
Rotations 241
• Composite Two Dimensional
Scalings 242
• deneral Iwo Dimensional
Pivot Point Rotation 242
• C.eneral Iwo Dimensional
Fixed Point Scaling 243
• General Iwo Dimensional
Scaling Directions 244
• Matrix Concatenation Properties 244
• General Two Dimensional
Composite Transformations and
Computational Efficiency 245
x Contents
• Two Dimensional Rigid Body
Transformation 247
• Constructing Two Dimensional
Rotation Matrices 248
• Two Dimensional Composite Matrix
Programming Example 248
5 5 Other Two Dimensional
Transformations 253
• Reflection 253
• Shear 255
5 6 Raster Methods for Geometric
Transformations 257
5 7 OpenGL Raster
Transformations 258
5 8 Transformations Between
Two Dimensional Coordinate
Systems 259
5 9 Geometric Transformations in
Three Dimensional Space 261
5 10 Three Dimensional Translation 262
5 11 Three Dimensional Rotation 263
• Three Dimensional Coordinate Axis
Rotations 264
• General Three Dimensional
Rotations 266
• Quaternion Methods for
Three Dimensional Rotations 272
5 12 Three Dimensional Scaling 275
5 13 Composite Three Dimensional
Transformations 278
5 14 Other Three Dimensional
Transformations 281
• Three Dimensional Reflections 281
• Three Dimensional Shears 281
5 15 Transformations Between
Three Dimensional Coordinate
Systems 282
5 16 Affine Transformations 283
5 17 OpenGL Geometric Transformation
Functions 283
• Basic OpenGL Geometric
Transformations 284
• OpenGL Matrix Operations 285
• OpenGL Matrix Stacks 287
• OpenGL Geometric Transformation
Programming Examples 288
5 18 Summary 291
References 293
Exercises 293
^^fl Two Dimensional
^^ Viewing 296
6 1 The Two Dimensional Viewing
Pipeline 297
6 2 The Clipping Window 299
• Viewing Coordinate Clipping
Window 300
• World Coordinate Clipping Window 300
6 3 Normalization and Viewport
Transformations 301
• Mapping the Clipping Window into
a Normalized Viewport 301
• Mapping the Clipping Window into
a Normalized Square 303
• Display of Character Strings 305
• Split Screen Effects and Multiple
Output Devices 305
6 4 OpenGL Two Dimensional Viewing
Functions 305
• OpenGL Projection Mode 306
• GLU Clipping Window Function 306
• OpenGL Viewport Function 307
• Creating a GLUT Display Window 307
• Setting the GLUT Display Window
Mode and Color 308
• GLUT Display Window Identifier 309
• Deleting a GLUT Display Window 309
• Current GLUT Display Window 309
• Relocating and Resizing a GLUT
Display Window 309
• Managing Multiple GLUT Display
Windows 310
• GLUT Subwindows 311
• Selecting a Display Window
Screen Cursor Shape 311
• Viewing Graphics Objects in a GLUT
Display Window 3H
• Executing the Application Program 312
• Other GLUT Functions 312
• OpenGL Two Dimensional Viewing
Program Example 313
6 5 Clipping Algorithms 315
6 6 Two Dimensional Point Clipping 315
6 7 Two Dimensional Line Clipping 316
• Cohen Sutherland Line Clipping 317
• Liang Barsky Line Clipping 322
• Nichol Lee Nichol Line Clipping 325
• Line Clipping Using Nonrectangular
Polygon Clip Windows 328
• Line Clipping Using Nonlinear
Clipping Window Boundaries 329
6 8 Polygon Fill Area Clipping 329
• Sutherland Hodgman Polygon
Clipping 331
• Weiler Atherton Polygon Clipping 335
• Polygon Clipping Using
Nonrectangular Polygon Clip
Windows 337
• Polygon Clipping Using Nonlinear
Clipping Window Boundaries 338
6 9 Curve Clipping 338
6 10 Text Clipping 339
6 11 Summary 340
References 342
Exercises 343
7Three Dimensional
Viewing 344
7 1 Overview of Three Dimensional
Viewing Concepts 345
• Viewing a Three Dimensional
Scene 345
• Projections 346
• Depth Cueing 346
• Identifying Visible Lines and
Surfaces 347
• Surface Rendering 348
• Exploded and Cutaway Views 348
• Three Dimensional and Stereoscopic
Viewing 348
7 2 The Three Dimensional Viewing
Pipeline 348
7 3 Three Dimensional
Viewing Coordinate Parameters 351
• The View Plane Normal Vector 351
Contents xi
• The View Up Vector 352
• The uvn Viewing Coordinate
Reference Frame 353
• Generating Three Dimensional
Viewing Effects 353
7 4 Transformation from World to
Viewing Coordinates 355
7 5 Projection Transformations 356
7 6 Orthogonal Projections 357
• Axonometric and Isometric
Orthogonal Projections 358
• Orthogonal Projection Coordinates 358
• Clipping Window and
Orthogonal Projection View Volume 359
• Normalization Transformation for an
Orthogonal Projection 360
7 7 Oblique Parallel Projections 362
• Oblique Parallel Projections in
Drafting and Design 362
• Cavalier and Cabinet Oblique
Parallel Projections 364
• Oblique Parallel Projection Vector 364
• Clipping Window and Oblique
Parallel Projection View Volume 366
• Oblique Parallel Projection
Transformation Matrix 366
• Normalization Transformation for an
Oblique Parallel Projection 367
7 8 Perspective Projections 368
• Perspective Projection
Transformation Coordinates 368
• Perspective Projection Equations:
Special Cases 369
• Vanishing Points for Perspective
Projections 370
• Perspective Projection View Volume 371
• Perspective Projection
Transformation Matrix 373
• Symmetric Perspective Projection
Frustum 374
• Oblique Perspective Projection
Frustum 378
• Normalized Perspective Projection
Transformation Coordinates 380
7 9 The Viewport Transformation and
Three Dimensional Screen
Coordinates 382
xii Contents
7 10 OpenGL Three Dimensional
Viewing Functions 383
• OpenGL Viewing Transformation
Function 383
• OpenGL Orthogonal Projection
Function 384
• OpenGL Symmetric
Perspective Projection Function 386
• OpenGL General
Perspective Projection Function 386
• OpenGL Viewports and Display
Windows 387
• OpenGL Three Dimensional
Viewing Program Example 387
7 11 Three Dimensional Clipping
Algorithms 389
• Clipping in Three Dimensional
Homogeneous Coordinates 389
• Three Dimensional Region Codes 390
• Three Dimensional Point and Line
Clipping 391
• Three Dimensional Polygon
Clipping 394
• Three Dimensional Curve Clipping 395
• Arbitrary Clipping Planes 395
7 12 OpenGL Optional Clipping Planes 397
7 13 Summary 398
References 400
Exercises 400
8Three Dimensional Object
Representations 402
8 1 Polyhedra 404
8 2 OpenGL Polyhedron Functions 404
• OpenGL Polygon Fill Area Functions 404
• GLUT Regular Polyhedron
Functions 404
• Example GLUT Polyhedron Program 406
8 3 Curved Surfaces 408
8 4 Quadric Surfaces 408
• Sphere 408
• Ellipsoid 408
• Torus 409
8 5 Superquadrics 410
• Superellipse 410
• Superellipsoid 411
8 6 OpenGL Quadric Surface and
Cubic Surface Functions 411
• GLUT Quadric Surface Functions 412
• GLUT Cubic Surface Teapot
Function 413
• GLU Quadric Surface Functions 414
• Example Program Using GLUT and
GLU Quadric Surface Functions 416
8 7 Blobby Objects 418
8 8 Spline Representations 420
• Interpolation and Approximation
Splines 420
• Parametric Continuity Conditions 421
• Geometric Continuity Conditions 422
• Spline Specifications 423
• Spline Surfaces 424
• Trimming Spline Surfaces 424
8 9 Cubic Spline Interpolation
Methods 425
• Natural Cubic Splines 426
• Hermite Interpolation 426
• Cardinal Splines 429
• Kochanek Bartels Splines 431
8 10 Bezier Spline Curves 432
• Bezier Curve Equations 433
• Example Bezier Curve Generating
Program 435
• Properties of Bezier Curves 437
• Design Techniques Using Bezier
Curves 438
• Cubic Bezier Curves 439
8 11 Bezier Surfaces 441
8 12 B Spline Curves 442
• B Spline Curve Equations 442
• Uniform Periodic B Spline Curves 444
• Cubic Periodic B Spline Curves 447
• Open Uniform B Spline Curves 448
• Nonuniform B Spline Curves 451
8 13 B Spline Surfaces 452
8 14 Beta Splines 452
• Beta Spline Continuity Conditions 452
• Cubic Periodic Beta Spline Matrix
Representation 453
8 15 Rational Splines 454
8 16 Conversion Between Spline
Representations 456
8 17 Displaying Spline Curves and
Surfaces 457
• Horner sRule 457
• Forward Difference Calculations 458
• Subdivision Methods 459
8 18 OpenGL Approximation Spline
Functions 461
• OpenGL Bezier Spline Curve
Functions 462
• OpenGL Bezier Spline Surface
Functions 465
• GLU B Spline Curve Functions 467
• GLU B Spline Surface Functions 469
• GLU Surface Trimming Functions 471
8 19 Sweep Representations 473
8 20 Constructive Solid Geometry
Methods 474
8 21 Octrees 476
8 22 BSP Trees 479
8 23 Fractal Geometry Methods 479
• Fractal Generation Procedures 481
• Classification of Fractals 481
• Fractal Dimension 482
• Geometric Construction of
Deterministic Self Similar Fractals 484
• Geometric Construction of
Statistically Self Similar Fractals 487
• Affine Fractal Construction Methods 489
• Random Midpoint Displacement
Methods 490
• Controlling Terrain Topography 493
• Self Squaring Fractals 495
• Self Inverse Fractals 506
8 24 Shape Grammars and Other
Procedural Methods 507
8 25 Particle Systems 510
8 26 Physically Based Modeling 511
8 27 Visualization of Data Sets 514
• Visual Representations for Scalar
Fields 514
Contents xiii
• Visual Representations for Vector
Fields 517
• Visual Representations for Tensor
Fields 519
• Visual Representations for
Multivariate Data Fields 520
8 28 Summary 521
References 524
Exercises 525
ES Visible Surface Detection
9 Methods 528
9 1 Classification of Visible Surface
Detection Algorithms 529
9 2 Back Face Detection 530
9 3 Depth Buffer Method 531
9 4 A Buffer Method 534
9 5 Scan Line Method 535
9 6 Depth Sorting Method 537
9 7 BSP Tree Method 540
9 8 Area Subdivision Method 541
9 9 Octree Methods 543
9 10 Ray Casting Method 544
9 11 Comparison of Visibility Detection
Methods 545
9 12 Curved Surfaces 545
• Curved Surface Representations 546
• Surface Contour Plots 546
9 13 Wire Frame Visibility Methods 547
• Wire Frame Surface Visibility
Algorithms 547
• Wire Frame Depth Cueing
Algorithm 548
9 14 OpenGL Visibility Detection
Functions 549
• OpenGL Polygon Culling Functions 549
• OpenGL Depth Buffer Functions 549
• OpenGL Wire Frame
Surface Visibility Methods 551
• OpenGL Depth Cueing Function 552
9 15 Summary 552
References 553
Exercises 554
xiv Contents
^^J Illumination Models and
Surface Rendering
Methods 556
10 1 Light Sources 558
• Point Light Sources 558
• Infinitely Distant Light Sources 559
• Radial Intensity Attenuation 559
• Directional Light Sources and
Spotlight Effects 560
• Angular Intensity Attenuation 561
• Extended Light Sources and the Warn
Model 562
10 2 Surface Lighting Effects 563
10 3 Basic Illumination Models 563
• Ambient Light 563
• Diffuse Reflection 564
• Specular Reflection and the Phong
Model 567
• Combined Diffuse and Specular
Reflections 571
• Diffuse and Specular Reflections
from Multiple Light Sources 571
• Surface Light Emissions 571
• Basic Illumination Model with
Intensity Attenuation and Spotlights 573
• RGB Color Considerations 573
• Other Color Representations 575
• Luminance 575
10 4 Transparent Surfaces 576
• Translucent Materials 576
• Light Refraction 577
• Basic Transparency Model 578
10 5 Atmospheric Effects 579
10 6 Shadows 580
10 7 Camera Parameters 581
10 8 Displaying Light Intensities 581
• Distributing System Intensity Levels 581
• Gamma Correction and Video
Lookup Tables 582
• Displaying Continuous Tone Images 584
10 9 Halftone Patterns and Dithering
Techniques 585
• Halftone Approximations 585
• Dithering Techniques 588
10 10 Polygon Rendering Methods 591
• Constant Intensity Surface
Rendering 591
• Gouraud Surface Rendering 592
• Phong Surface Rendering 595
• Fast Phong Surface Rendering 595
10 11 Ray Tracing Methods 597
• Basic Ray Tracing Algorithm 597
• Ray Surface Intersection
Calculations 601
• Ray Sphere Intersections 602
• Ray Polyhedron Intersections 603
• Reducing Object Intersection
Calculations 604
• Space Subdivision Methods 605
• Simulating Camera Focusing Effects 607
• Antialiased Ray Tracing 610
• Distributed Ray Tracing 612
10 12 Radiosity Lighting Model 615
• Radiant Energy Terms 616
• The Basic Radiosity Model 616
• Progressive Refinement Radiosity
Method 620
10 13 Environment Mapping 623
10 14 Photon Mapping 624
10 15 Adding Surface Detail 625
10 16 Modeling Surface Detail with
Polygons 627
10 17 Texture Mapping 628
• Linear Texture Patterns 628
• Surface Texture Patterns 629
• Volume Texture Patterns 632
• Texture Reduction Patterns 633
• Procedural Texturing Methods 633
10 18 Bump Mapping 634
10 19 Frame Mapping 637
10 20 OpenGL Illumination and
Surface Rendering Functions 637
• OpenGL Point Light Source Function 637
• Specifying an OpenGL Light Source
Position and Type 63o
• Specifying OpenGL Light Source
Colors 639
• Specifying Radial Intensity
Attenuation Coefficients for an
OpenGL Light Source 639
• OpenGL Directional Light Sources
(Spotlights) 640
• OpenGL Global Lighting Parameters 641
• OpenGL Surface Property Function 642
• OpenGL Illumination Model 643
• OpenGL Atmospheric Effects 644
• OpenGL Transparency Functions 645
• OpenGL Surface Rendering
Functions 646
• OpenGL Halftoning Operations 647
10 21 OpenGL Texture Functions 648
• OpenGL Line Texture Functions 648
• OpenGL Surface Texture Functions 651
• OpenGL Volume Texture Functions 653
• OpenGL Color Options for Texture
Patterns 653
• OpenGL Texture Mapping Options 654
• OpenGL Texture Wrapping 655
• Copying OpenGL Texture Patterns
from the Frame Buffer 655
• OpenGL Texture Coordinate Arrays 655
• Naming OpenGL Texture Patterns 656
• OpenGL Texture Subpatterns 657
• OpenGL Texture Reduction Patterns 657
• OpenGL Texture Borders 658
• OpenGL Proxy Textures 659
• Automatic Texturing of Quadric
Surfaces 659
• Homogeneous Texture Coordinates 659
• Additional OpenGL Texture Options 660
10 22 Summary 660
References 664
Exercises 665
11 Interactive Input Methods
and Graphical User
Interfaces 668
11 1 Graphical Input Data 669
11 2 Logical Classification of Input
Devices 669
• Locator Devices 670
• Stroke Devices 670
• String Devices 670
Contents xv
• Valuator Devices 671
• Choice Devices 671
• Pick Devices 672
11 3 Input Functions for Graphical Data 673
• Input Modes 674
• Echo Feedback 674
• Callback Functions 674
11 4 Interactive Picture Construction
Techniques 675
• Basic Positioning Methods 675
• Dragging 675
• Constraints 675
• Grids 676
• Rubber Band Methods 676
• Gravity Field 677
• Interactive Painting and Drawing
Methods 678
11 5 Virtual Reality Environments 679
11 6 OpenGL Interactive Input Device
Functions 679
• GLUT Mouse Functions 680
• GLUT Keyboard Functions 684
• GLUT Tablet Functions 689
• GLUT Spaceball Functions 689
• GLUT Button Box Function 690
• GLUT Dials Function 690
• OpenGL Picking Operations 690
11 7 OpenGL Menu Functions 696
• Creating a GLUT Menu 696
• Creating and Managing Multiple
GLUT Menus 699
• Creating GLUT Submenus 700
• Modifying GLUT Menus 703
11 8 Designing a Graphical User Interface 703
• The User Dialogue 703
• Windows and Icons 704
• Accommodating Multiple Skill
Levels 704
• Consistency 705
• Minimizing Memorization 705
• Backup and Error Handling 705
• Feedback 705
11 9 Summary 706
References 709
Exercises 709
xvi Contents
12 Color Models and Color
Applications 712
12 1 Properties of Light 713
• The Electromagnetic Spectrum 713
• Psychological Characteristics of
Color 715
12 2 Color Models 716
• Primary Colors 716
• Intuitive Color Concepts 716
12 3 Standard Primaries and the
Chroma ticity Diagram 717
• The XYZ Color Model 717
• Normalized XYZ Values 718
• The CIE Chromaticity Diagram 718
• Color Gamuts 719
• Complementary Colors 719
• Dominant Wavelength 719
• Purity 720
12 4 The RGB Color Model 720
12 5 The YIQ and Related Color Models 722
• The YIQ Parameters 722
• Transformations Between RGB and
YIQ Color Spaces 722
• The YUV YCrCb Systems 723
12 6 The CMY and CMYK Color Models 723
• The CMY Parameters 723
• Transformations Between CMY and
RGB Color Spaces 724
12 7 The HSV Color Model 724
• The HSV Parameters 724
• Selecting Shades, Tints, and Tones 726
• Transformations Between HSV and
RGB Color Spaces 726
12 8 The HLS Color Model 728
12 9 Color Selection and Applications 728
12 10 Summary 730
References 731
Exercises 731
13 Computer Animation 732
13 1 Raster Methods for Computer
Animation 734
• Double Buffering 734
• Generating Animations Using Raster
Operations 735
13 2 Design of Animation Sequences 735
13 3 Traditional Animation Techniques 737
13 4 General Computer Animation
Functions 737
13 5 Computer Animation Languages 738
13 6 Key Frame Systems 739
• Morphing 739
• Simulating Accelerations 742
13 7 Motion Specifications 745
• Direct Motion Specification 745
• Goal Directed Systems 745
• Kinematics and Dynamics 746
13 8 Articulated Figure Animation 747
13 9 Periodic Motions 748
13 10 OpenGL Animation Procedures 749
13 11 Summary 752
References 754
Exercises 754
14 Hierarchical Modeling 756
14 1 Basic Modeling Concepts 757
• System Representations 757
• Symbol Hierarchies 759
14 2 Modeling Packages 760
14 3 General Hierarchical Modeling
Methods 762
• Local Coordinates 763
• Modeling Transformations 763
• Creating Hierarchical Structures 763
14 4 Hierarchical Modeling Using
OpenGL Display Lists 765
14 5 Summary 765
References 766
Exercises 766
15 Graphics File Formats 768
15 1 Image File Configurations 769
15 2 Color Reduction Methods 770
• Uniform Color Reduction 770
• Popularity Color Reduction 771
• Median Cut Color Reduction 771
15 3 File Compression Techniques 771
• Run Length Encoding 772
• LZW Encoding 772
• Other Pattern Recognition
Compression Methods 773
• Huffman Encoding 773
• Arithmetic Encoding 776
• Discrete Cosine Transform 776
15 4 Composition of the Major File
Formats 778
• JPEG: Joint Photographic Experts
Group 779
• CGM: Computer Graphics Metafile
Format 780
• TIFF: Tag Image File Format 781
• PNG: Portable Network Graphics
Format 781
• XBM: X Window System Bitmap
Format XPM: X Window System
Pixmap Format 781
• Adobe Photoshop Format 782
• MacPaint: Macintosh Paint Format 782
• PICT: Picture Data Format 782
• BMP: Bitmap Format 782
• PCX: PC Paintbrush File Format 783
• TGA: Truevision Graphics Adapter
Format 783
• GIF: Graphics Interchange Format 783
15 5 Summary 783
References 784
Exercises 784
^^J Mathematics for
Computer Graphics 787
A l Coordinate Reference Frames 787
• Two Dimensional Cartesian Screen
Coordinates 787
• Standard Two Dimensional
Cartesian Reference Frames 788
• Polar Coordinates in the xy Plane 788
Contents xvii
• Standard Three Dimensional
Cartesian Reference Frames 789
• Three Dimensional Cartesian Screen
Coordinates 790
• Three Dimensional
Curvilinear Coordinate Systems 790
• Solid Angle 791
A 2 Points and Vectors 792
• Point Properties 792
• Vector Properties 792
• Vector Addition and Scalar
Multiplication 794
• Scalar Product of Two Vectors 794
• Vector Product of Two Vectors 795
A 3 Tensors 796
A 4 Basis Vectors and the Metric Tensor 796
• Determining Basis Vectors for a
Coordinate Space 796
• Orthonormal Basis 797
• Metric Tensor 798
A 5 Matrices 799
• Scalar Multiplication and Matrix
Addition 800
• Matrix Multiplication 800
• Matrix Transpose 801
• Determinant of a Matrix 801
• Matrix Inverse 802
A 6 Complex Numbers 802
• Basic Complex Arithmetic 803
• Imaginary Unit 803
• Complex Conjugate and Modulus of
a Complex Number 804
• Complex Division 804
• Polar Coordinate Representation for
a Complex Number 805
A 7 Quaternions 805
A 8 Nonparametric Representations 807
A 9 Parametric Representations 807
A 10 Rate of Change Operators 808
• Gradient Operator 809
• Directional Derivative 809
• General Form of the Gradient
Operator 810
• Laplace Operator 810
• Divergence Operator 810
• Curl Operator 811
xviii Contents
A ll Rate of Change Integral
Transformation Theorems 811
• Stokes s Theorem 811
• Green s Theorem for a Plane Surface 812
• Divergence Theorem 813
• Green s Transformation Equations 814
A 12 Area and Centroid of a Polygon 814
• Area of a Polygon 814
• Centroid of a Polygon 815
A 13 Calculating Properties of Polyhedra 817
A 14 Numerical Methods 817
• Solving Sets of Linear Equations 817
• Finding Roots of Nonlinear
Equations 819
• Evaluating Integrals 820
• Solving Ordinary Differential
Equations 822
• Solving Partial Differential Equations 824
• Least Squares Curve Fitting
Methods for Data Sets 825
Bibliography 827
Subject Index 839
OpenGL Function Index 856
• Core Library Functions 856
• GLU Functions 857
• GLUT Functions 857
|
any_adam_object | 1 |
author | Hearn, Donald Baker, M. Pauline |
author_facet | Hearn, Donald Baker, M. Pauline |
author_role | aut aut |
author_sort | Hearn, Donald |
author_variant | d h dh m p b mp mpb |
building | Verbundindex |
bvnumber | BV017253060 |
callnumber-first | T - Technology |
callnumber-label | T385 |
callnumber-raw | T385 |
callnumber-search | T385 |
callnumber-sort | T 3385 |
callnumber-subject | T - General Technology |
classification_rvk | ST 321 |
ctrlnum | (OCoLC)223678977 (DE-599)BVBBV017253060 |
dewey-full | 006.6 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 006 - Special computer methods |
dewey-raw | 006.6 |
dewey-search | 006.6 |
dewey-sort | 16.6 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 3. ed., internat. ed. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01657nam a2200457zc 4500</leader><controlfield tag="001">BV017253060</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20041213 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">030624s2004 xxuad|| |||| 00||| eng d</controlfield><datafield tag="010" ind1=" " ind2=" "><subfield code="a">2003054898</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0131202383</subfield><subfield code="9">0-13-120238-3</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)223678977</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV017253060</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">aacr</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">xxu</subfield><subfield code="c">US</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-92</subfield><subfield code="a">DE-29T</subfield><subfield code="a">DE-B768</subfield><subfield code="a">DE-2070s</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">T385</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">006.6</subfield><subfield code="2">21</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">006.6</subfield><subfield code="2">22</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 321</subfield><subfield code="0">(DE-625)143658:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Hearn, Donald</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Computer graphics with OpenGL</subfield><subfield code="c">Donald Hearn ; M. Pauline Baker</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">3. ed., internat. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Upper Saddle River, NJ</subfield><subfield code="b">Pearson Education</subfield><subfield code="c">2004</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XXII, 857 S.</subfield><subfield code="b">Ill, graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="630" ind1="0" ind2="4"><subfield code="a">OpenGL</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computer graphics</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Computergrafik</subfield><subfield code="0">(DE-588)4010450-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">OpenGL</subfield><subfield code="0">(DE-588)4391716-1</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Computergrafik</subfield><subfield code="0">(DE-588)4010450-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">OpenGL</subfield><subfield code="0">(DE-588)4391716-1</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Baker, M. Pauline</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010399370&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-010399370</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield></record></collection> |
id | DE-604.BV017253060 |
illustrated | Illustrated |
indexdate | 2024-07-09T19:15:44Z |
institution | BVB |
isbn | 0131202383 |
language | English |
lccn | 2003054898 |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-010399370 |
oclc_num | 223678977 |
open_access_boolean | |
owner | DE-92 DE-29T DE-B768 DE-2070s |
owner_facet | DE-92 DE-29T DE-B768 DE-2070s |
physical | XXII, 857 S. Ill, graph. Darst. |
publishDate | 2004 |
publishDateSearch | 2004 |
publishDateSort | 2004 |
publisher | Pearson Education |
record_format | marc |
spelling | Hearn, Donald Verfasser aut Computer graphics with OpenGL Donald Hearn ; M. Pauline Baker 3. ed., internat. ed. Upper Saddle River, NJ Pearson Education 2004 XXII, 857 S. Ill, graph. Darst. txt rdacontent n rdamedia nc rdacarrier OpenGL Computer graphics Computergrafik (DE-588)4010450-3 gnd rswk-swf OpenGL (DE-588)4391716-1 gnd rswk-swf Computergrafik (DE-588)4010450-3 s OpenGL (DE-588)4391716-1 s 1\p DE-604 Baker, M. Pauline Verfasser aut HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010399370&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis 1\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk |
spellingShingle | Hearn, Donald Baker, M. Pauline Computer graphics with OpenGL OpenGL Computer graphics Computergrafik (DE-588)4010450-3 gnd OpenGL (DE-588)4391716-1 gnd |
subject_GND | (DE-588)4010450-3 (DE-588)4391716-1 |
title | Computer graphics with OpenGL |
title_auth | Computer graphics with OpenGL |
title_exact_search | Computer graphics with OpenGL |
title_full | Computer graphics with OpenGL Donald Hearn ; M. Pauline Baker |
title_fullStr | Computer graphics with OpenGL Donald Hearn ; M. Pauline Baker |
title_full_unstemmed | Computer graphics with OpenGL Donald Hearn ; M. Pauline Baker |
title_short | Computer graphics with OpenGL |
title_sort | computer graphics with opengl |
topic | OpenGL Computer graphics Computergrafik (DE-588)4010450-3 gnd OpenGL (DE-588)4391716-1 gnd |
topic_facet | OpenGL Computer graphics Computergrafik |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010399370&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT hearndonald computergraphicswithopengl AT bakermpauline computergraphicswithopengl |