Introduction to Computer Graphics
James D. Foley, Andries Van Dam, Steven K. Feiner
$9.95 (includes GST)
Hardcover package 632
90%Off Retail Price
CLEARANCE Item - Special discount - limited stock!
N.Sydney : In Stock
GRAPHICS PROGRAMMING Level: B/I/
| Add to Shopping Cart
This new introductory text to computer graphics is an adaptation of Computer Graphics: Principles and Practice, Second Edition, which remains the most comprehensive and authoritative work in the field. While retaining the currency and accuracy of the larger book, this abbreviated version focuses on topics essential for all beginners in computer graphics and provides expanded explanations for readers with little or no technical background. Worked examples have been added to illustrate important concepts and techniques, and program code has been written in the C language to enhance the book's usefulness. In addition, the book contains an extensive illustration program, with more than 50 full-color images.
Topic coverage includes basic graphics programming, hardware, and applications. Important algorithms are included to facilitate implementation of both 2D and 3D graphics. A separate chapter covers SPHIGS--a simplified dialect of the PHIGS 3D standard--and coincides with the availability of an updated version of the software. Chapter 9 and presents a concise overview of interaction issues and techniques. Advanced material from the larger book has been condensed, and the mathematics needed for it has been explained carefully .
The result is an accessible introduction to computer graphics, crafted to provide a solid foundation for further work in this exciting field.
Adaptation of the definitive computer graphics book in the field--half the length.
Presents key concepts geared toward students with minimal technical background.
Provides worked examples in C.
Retains the high level of teaching standards of the parent graphics text.
James D. Foley (Ph.D., University of Michigan) is the founding director of the interdisciplinary Graphics, Visualization & Usability Center at Georgia Institute of Technology, and Professor of Computer Science and of Electrical Engineering. Coauthor with Andries van Dam of Fundamentals of Interactive Computer Graphics, Foley is a member of ACM, ACM SIGGRAPH, ACM SIGCHI, the Human Factors Society, IEEE, and the IEEE Computer Society. He recently served as Editor-in-Chief of ACM Transactions on Graphics, and is on the editorial boards of Computers and Graphics, User Modeling and User-Adapted Interaction, and Presence. His research interests include model-based user interface development tools, user interface software, information visualization, multimedia, and human factors of the user interface. Foley is a Fellow of the IEEE, and a member of Phi Beta Kappa, Tau Beta Phi, Eta Kappa Nu, and Sigma Xi. At Georgia Tech, he has received College of Computing graduate student awards as Most Likely to Make Students Want to Grow Up to Be Professors, Most Inspirational Faculty Member, the campus Interdisciplinary Activities Award, and the Sigma Xi Sustained Research Award. In 1997, Foley received the SIGGRAPH Steven A. Coons Award.
Andries van Dam (Ph.D., University of Pennsylvania) was the first chairman of the Computer Science Department at Brown University. Currently Thomas J. Watson, Jr. University Professor of Technology and Education and Professor of Computer Science at Brown, he is also Director of the NSF/ARPA Science and Technology Center for Computer Graphics and Scientific Visualization. His research interests include computer graphics, hypermedia systems, and workstations. He is past Chairman of the Computing Research Association, Chief Scientist at Electronic Book Technologies, Chairman of Object Power's Technical Advisory Board, and a member of Microsoft's Technical Advisory Board. A Fellow of both the IEEE Computer Society and of ACM, he is also cofounder of ACM SIGGRAPH. Coauthor of the widely used book Fundamentals of Interactive Computer Graphics with James Foley, and of Object-Oriented Programming in Pascal: A Graphical Approach, with D. Brookshire Conner and David Niguidula, he has, in addition, published over eighty papers. In 1990 van Dam received the NCGA Academic Award, in 1991, the SIGGRAPH Steven A. Coons Award, and in 1993 the ACM Karl V. Karlstrom Outstanding Educator Award.
Steven K. Feiner (Ph.D., Brown University) is Associate Professor of Computer Science at Columbia University, where he directs the Computer Graphics and User Interfaces Lab. His current research focuses on 3D user interfaces, virtual worlds, augmented reality, knowledge-based design of graphics and multimedia, animation, visualization, and hypermedia. Dr. Feiner is on the editorial boards of ACM Transactions on Graphics, IEEE Transactions on Visualizations and Computer Graphics, and Electronic Publishing, and is on the executive board of the IEEE Technical Committee on Computer Graphics. He is a member of ACM SIGGRAPH and the IEEE Computer Society. In 1991 he received an ONR Young Investigator Award. Dr. Feiner's work has been published in over fifty papers and presented in numerous talks, tutorials, and panels.
John F. Hughes (Ph.D., University of California, Berkeley) is an Assistant Professor of Computer Science at Brown University, where he codirects the computer graphics group with Andries van Dam. His research interests are in applications of mathematics to computer graphics, scientific visualization, mathematical shape description, mathematical fundamentals of computer graphics, and low-dimensional topology and geometry. He is a member of the AMS, IEEE, and ACM SIGGRAPH. His recent papers have appeared in Computer Graphics, and in Visualization Conference Proceedings. He also has a long-standing interest in the use of computer graphics in mathematics education.
Table of Contents
(All chapters, except Chapters 5 and 6 contain a Summary, and all chapters conclude with Exercises.)
1. Introducing: Computer Graphics.
A Few Uses of Computer Graphics.
A Brief History of Computer Graphics.
The Advantages of Interactive Graphics.
Conceptual Framework for Interactive Graphics.
Display of the Model.
2. Programming in the Simple Raster Graphics Package (SRGP).
Drawing with SRGP.
Specification of Graphics Primitives.
Filled Primitives and Their Attributes.
Saving and Restoring Attributes.
Basic Interaction Handling.
Logical Input Devices.
Sampling Versus Event-Driven Processing.
Pick Correlation for Interaction Handling.
Setting Device Measure and Attributes.
Raster Graphics Features.
The SRGP--copyPixel Operation.
Write Mode or RasterOp.
Limitation of SRGP.
Application Coordinate Systems.
Storage of Primitives for Respecification.
3. Basic Raster Graphics Algorithms for Drawing 2D Primitives.
Implications of Display-System Architectures.
The Output Pipeline in Software.
Scan Converting Lines.
The Basic Incremental Algorithm.
Midpoint Line Algorithm.
Scan Converting Circles.
Midpoint Circle Algorithm.
Edge Coherence and the Scan-Line Algorithm.
Pattern Filling Using Scan Conversion.
Pattern Filling Without Repeated Scan Conversion.
The Moving Pen.
Clipping in a Raster World.
Clipping Lines by Solving Simultaneous Equations.
The Cohen-Sutherland Line-Clipping Algorithm.
A Parametric Line-Clipping Algorithm.
The Sutherland-Hodgman Polygon-Clipping Algorithm.
Defining and Clipping Characters.
Implementing a Text Output Primitive.
Unweighted Area Sampling.
Weighted Area Sampling.
4. Graphics Hardware.
Raster-scan Display Systems.
Simple Raster Display System.
Raster Display System with Peripheral Display Processor.
Additional Display-Processor Functionality.
Raster Display System with Integrated Display Processor.
The Video Controller.
Bitmap Transformations and Windowing.
Input Devices for Operator Interaction.
5. Geometrical Transformations.
The Dot Product in R.
Properties of the Dot Product.
Homogeneous Coordinates and Matrix Representation of 2D Transformations.
Composition of 2D Transformations.
The Window-to-Viewport Transformation.
Matrix Representation of 3D Transformations.
Composition of 3D Transformations.
Transformations as a Change in Coordinate System.
6. Viewing in 3D.
The Synthetic Camera and Steps.
Specifying an Arbitrary 3D View.
Examples of 3D Viewing.
Finite View Volumes.
The Mathematics of Planar Geometric Projections.
Implementing Planar Geometric Projections.
Clipping Against a Canonical View Volume in 3D.
Clipping in Homogeneous Coordinates.
Mapping into a Viewpoint.
7. Object Hierarchy and Simple PHIGS (SPHIGS).
Hierarchy in Geometric Models.
Relationship among Model, Application Program, and Graphics System.
Characteristics of Retained-Mode Graphics Packages.
Central Structure Storage and Its Advantages.
Limitations of Retained-Mode Packages.
Defining and Displaying.
Opening and Closing Structures.
Specifying Output Primitives and Their Attributes.
Posting Structures for Display Traversal.
Graphics Applications Sharing a Screen via Window Management.
Hierarchical Structure Networks.
Simple Three-Level Hierarchy.
Interactive Modeling Programs.
Matrix Composition in Display Traversal.
Appearance-Attributes Handling in Hierarchy.
SPHIGS Attributes and Text Unaffected by Transformations.
Screen Updating and Rendering Modes.
Structure Network Editing for Dynamic Effects.
Accessing Elements with Indices and Labels.
Intrastructure Editing Operations.
Instance Blocks for Editing Convenience.
Controlling Automatic Regeneration of the Screen Imaging.
Additional Output Features.
Optimizing Display of Hierarchical Models.
Limitations of Hierarchical Modeling in PHIGS.
Alternative Forms of Hierarchical Modeling.
Other (Industry) Standards.
8. Input Devices, Interaction Techniques, and Interaction Tasks.
3D Interaction Devices.
Basic Interaction Tasks.
The Position Interaction Task.
The Select Interaction Task-Variable-Sized Set of Choices.
The Select Interaction Task-Relativity Fixed-Sized Choice.
The Text Interaction Task.
The Quantify Interaction Task.
3D Interaction Tasks.
Composite Interaction Tasks.
9. Representation of Curves and Surfaces.
Representing Polygon Meshes.
Parametric Cubic Curves.
Uniforum Nonrational B-Splines.
Nonuniforum, Rational Cubic Polynomial Curve Segments.
Nonuniforum, Rational Cubic Polynomial Curve Segments.
Fitting Curves to Digitized Points.
Comparison of the Cubic Curves.
Parametric Bicubic Surfaces.
Normals to Surfaces.
Displaying Bicubic Surfaces.
Specialized Modeling Techniques.
10. Solid Modeling.
Regularized Boolean Set Operation.
Polyhedra and Euler's Formula.
Boolean Set Operations.
Octrees Binary Space-Partitioning Tress.
Constructive Solid Geometry.
Comparison of Representations.
User Interface for Solid Modeling.
11. Achromatic and Colored Light.
Selection of Intesities.
The CIE Chromaticity Diagram.
Color Models for Raster Graphics.
The RGB Color Model.
The CMY Color Model.
The YIG Color Model.
The HSV Color Model.
Interactive Specification of Color.
Interpolation in Color Space.
Use of Color in Computer Graphics.
12. The Quest for Visual Realism.
Rendering Techniques for Line Drawings.
Multiple Orthographic Views.
Rendering Techniques for Shaded Images.
Illumination and Shading.
Modeling Curved Surfaces.
Improved Illumination and Shading.
Transparency and Reflection.
Improved Camera Models.
Improved Object Models.
Dynamics and Animation.
The Value of Motion.
Interacting With Our Other Senses.
13. Visible-Surface Determination.
Techniques for Efficient Visible-Surface Algorithms.
The Perspective Transformation.
Extents and Bounding Volumes.
The z-Buffer Algorithm.
Visible-Surface Ray Tracing.
Efficiency Considerations for Visible-Surface Ray Tracing.
List Priority Algorithms.
Algorithms for Curved Surfaces.
14. Illumination and Shading.
Improving the Point-Light-Source Model.
Multiple Light Sources.
Physically Based Illumination Models.
Shading Models for Polygons.
Polygon Mesh Shading.
Problems with Interpolated Shading.
Scan-Line Generation of Shadows.
Global Illumination Algorithms.
Recursive Ray Tracing.
Recursive Ray Tracing.
The Radiosity Equation.
Computing Form Factors.
The Rendering Pipeline.
Local Illumination Pipelines.
Global Illumination Pipelines.