Description
Mathematical and Computer Programming Techniques for Computer Graphics introduces the mathematics and related computer programming techniques used in Computer Graphics. Starting with the underlying mathematical ideas, it gradually leads the reader to a sufficient understanding of the detail to be able to implement libraries and programs for 2D and 3D graphics. Using lots of code examples, the reader is encouraged to explore and experiment with data and computer programs (in the C programming language) and to master the related mathematical techniques.A simple but effective set of routines are included, organised as a library, covering both 2D and 3D graphics - taking a parallel approach to mathematical theory, and showing the reader how to incorporate it into example programs. This approach both demystifies the mathematics and demonstrates its relevance to 2D and 3D computer graphics.
Vector Algebra Survival Kit
Some Basic Definitions and Notation
Multiplication of a Vector by a Scalar
Vector Addition
Position Vectors and Free Vectors
The Vector Equation of a Line
Linear Dependence / Independence of Vectors
Vector Bases
The Components of a Vector
Multiplication of a Vector by a Scalar
Vector Addition
Vector Equality
Orthogonal, Orthonormal and Right-Handed Vector Bases
Cartesian Bases and Cartesian Coordinates
The Length of a Vector
The Scalar Product of Vectors
The Scalar Product Expresses in Terms of its Components
Properties and Applications of the Scalar Product
The Direction Ratios and Direction Cosines of a Vector
The Vector Product of Two Vectors
The Vector Product Expressed in Terms of its Components
Properties of the Vector Product
Triple Produces of Vectors
The Components of a Vector Relative to a Non-orthogonal Basis
The Decomposition of a Vector According to a Basis
The Vector Equation of the Line Revisited
The Vector Equation of the Place
Some Applications of Vector Algebra in Analytical Geometry
Summary of Vector Algebra Axioms and Rules
A Simple Vector Algebra C Library
Matrix Algebra Survival Kit
The Definition of a Matrix
Square Matrices
Diagonal Matrices
The Identity Matrix
The Zero or Null Matrix
The Transpose of a Matrix
Symmetric and Antisymmetric Matrices
Triangular Matrices
Scalar Matrices
Equality of Matrices
Matrix Operations
The Minor of a Matrix
The Determinant of a Matrix
The Computational Rules of Determinants
The Cofactor of an Element of a Matrix and the Cofactor Matrix
The Ajoint Matrix or Adjugate Matrix
The Reciprocal or Inverse of a Matrix
A Theorem on Invertible Matrices and their Determinants
Axioms and Rules of Matrix Inversion
Solving a System of Linear Simultaneous Equations
Orthogonal Matrices
Two Theorems on Vector by Matrix Multiplication
The Row / Column Reversal Matrix
Summary of Matrix Algebra Axioms and Rules
A Simple Matrix Algebra C Library
Vector Spaces or Linear Spaces
The Definition of a Scalar Field
The Definition of a Vector Space
Linear Combinations of Vectors
Linear Dependence and Linear Independence of Vectors
Spans and Bases of a Vector Space
Transformations between Bases
Transformations between Orthonormal Bases
An Alternative Notation for Change of Basis Transformations
Two-Dimensional Transformations
The Definition of a 2D Transformation
The Concatenation of Transformations
2D Graphics Transformations
2D Primitive Transformations
2D Composite Transformations
The Sign of the Angles in Transformations
Some Important Observations
The Matrix Representation of 2D Transformations
The Matrix Representation of Primitive Transformations
Some Transformation Matrix Properties
The Concatenation of Transformation Matrices
Local Frame and Global Frame Transformations
Transformations of the Frame of Reference or Coordinate System
The Viewing Transformation
Homogeneous Coordinates
A Simple C Library for 2D Transformations
Two-Dimensional Clipping
Clipping a 2D Point to a Rectangular Clipping Boundary
Clipping a 2D Line Segment to a Rectangular Clipping Boundary
The Cohen and Sutherland 2D Line-Clipping Algorithm
2D Polygon Clipping
References
Three-Dimensional Transformations
Primitive 3D Transformations
The Global and Local Frames of Reference
Aiming Transformations
Composite Transformations
Local Frame and Global Frame Transformations
Transformations of the Frame of Reference or Coordinate System
References
Viewing and Projection Transformations
The Conceptual Camera Model
The Viewing Transformation
The Projection Transformation
The Projection Transformation Matrix
Parallel Projections
Perspective Projections
The Screen or Device Coordinate System
3D Line Clipping
Perspective Depth
A Simple C Library for 3D Transformations
3D Rendering
Introduction
Rendering Algorithms
Reflection Models and Shading Techniques
Shading Models
References
A1: A Simple Vector Algebra C Library
A2: A Simple Matrix Algebra C Library
A3: A Simple C Library for 2D Transformations
A4: A Simple C Library for 3D Transformati
Published
01 Nov 2005
Publisher
SPRINGER
ISBN
9781852339029
Pages
544




Static Book Details Index Page - Click Here to go to Computer Manuals Website