## Essential Mathematics for Computer Graphics fastBaffled by maths? Then don't give up hope. John Vince will show you how to understand many of the mathematical ideas used in computer animation, virtual reality, CAD, and other areas of computer graphics. In ten chapters you will rediscover - and hopefully discover for the first time a new way of understanding - the mathematical techniques required to solve problems and design computer programs for computer graphic applications. Each chapter explores a specific mathematical topic and takes you forward into more advanced areas until you are able to understand 3D curves and surface patches, and solve problems using vectors. After reading the book, you should be able to refer to more challenging books with confidence and develop a greater insight into the design of computer graphics software. Get to grips with mathematics fast ... - Numbers - Algebra - Trigonometry - Coordinate geometry - Transforms - Vectors - Curves and surfaces - Analytic geometry Essential Mathematics for Computer Graphics "fast" The book you will read once, and refer to over and over again! |

### What people are saying - Write a review

We haven't found any reviews in the usual places.

### Contents

Mathematics | 1 |

Is mathematics difficult? | 3 |

Who should read this book? | 4 |

Assumptions made in this book | 5 |

Numbers | 7 |

Natural numbers | 8 |

Integers | 9 |

Irrational numbers | 10 |

Rotating about an axis | 96 |

3D reflections | 98 |

2D change of axes | 99 |

Direction cosines | 100 |

Positioning the virtual camera | 102 |

Direction cosines | 103 |

Euler angles | 106 |

Quaternions | 110 |

Summary | 13 |

Algebra | 15 |

Notation | 16 |

Algebraic laws | 17 |

Associative law | 18 |

Distributive law | 19 |

Indices | 20 |

Logarithms | 21 |

Further notation | 23 |

Trigonometry | 25 |

The trigonometric ratios | 26 |

Example | 28 |

Trigonometric relationships | 29 |

The cosine rule | 30 |

Perimeter relationships | 31 |

Summary | 32 |

Cartesian Coordinates | 33 |

The Cartesian xyplane | 34 |

Function graphs | 36 |

Geometric shapes | 37 |

Areas of shapes | 38 |

Theorem of Pythagoras in 2D | 39 |

3D coordinates | 40 |

3D polygons | 41 |

Summary | 42 |

Vectors | 43 |

2D vectors | 45 |

Magnitude of a vector | 47 |

3D vectors | 49 |

Multiplying a vector by a scalar | 50 |

Position vectors | 51 |

Unit vectors | 52 |

Cartesian vectors | 53 |

Vector multiplication | 54 |

Scalar product | 55 |

Example of the dot product | 57 |

The dot product in lighting calculations | 58 |

The dot product in backface detection | 59 |

The vector product | 60 |

The righthand rule | 64 |

Deriving a unit normal vector for a triangle | 65 |

Areas | 66 |

Calculating 2D areas | 67 |

Summary | 68 |

Transformations | 69 |

2D transformations | 70 |

Reflection | 71 |

Matrices | 72 |

Systems of notation | 75 |

The determinant of a matrix | 76 |

Homogeneous coordinates | 77 |

2D translation | 79 |

2D reflections | 80 |

2D shearing | 82 |

2D rotation | 83 |

2D scaling | 86 |

2D reflections | 87 |

2D rotation about an arbitrary point | 88 |

3D transformations | 89 |

3D scaling | 90 |

Gimbal lock | 95 |

Multiplying quaternions | 111 |

Rotating points about an axis | 112 |

Roll pitch and yaw quaternions | 116 |

Quaternions in matrix form | 118 |

Frames of reference | 119 |

Transforming vectors | 120 |

Determinants | 122 |

Perspective projection | 126 |

Summary | 128 |

Interpolation | 129 |

Linear interpolant | 130 |

Nonlinear interpolation | 133 |

Cubic interpolation | 135 |

Interpolating vectors | 141 |

Interpolating quaternions | 145 |

Summary | 147 |

Curves and Patches | 149 |

The circle | 150 |

The ellipse | 151 |

Bezier curves | 152 |

Quadratic Bezier curves | 157 |

Cubic Bernstein polynomials | 158 |

A recursive Bezier formula | 162 |

Linear interpolation | 164 |

Bsplines | 167 |

Uniform Bsplines | 168 |

Continuity | 171 |

Nonuniform Bsplines | 172 |

Surface patches | 173 |

Quadratic Bezier surface patch | 174 |

Cubic Bezier surface patch | 177 |

Summary | 180 |

Analytic Geometry | 181 |

Review of geometry | 182 |

Intercept theorems | 183 |

Golden section | 184 |

Triangles | 185 |

Isosceles triangle | 186 |

Equilateral triangle | 187 |

Theorem of Pythagoras | 188 |

Trapezoid | 189 |

Rhombus | 190 |

Circle | 192 |

2D analytical geometry | 193 |

The Hessian normal form | 194 |

Space partitioning | 197 |

The Hessian normal form from two points | 198 |

Intersection points | 199 |

Point inside a triangle | 202 |

Hessian normal form | 205 |

Intersection of a circle with a straight line | 207 |

3D geometry | 209 |

Point of intersection of two straight lines | 211 |

Equation of a plane | 214 |

Space partitioning | 216 |

Point of intersection of a line segment and a plane | 218 |

Summary | 219 |

Conclusion | 221 |

References | 223 |

225 | |

### Other editions - View all

### Common terms and phrases

algebraic angle arbitrary point associated axial system axis B-splines Bernstein polynomials Bezier curves blending calculations chapter circle complex numbers components computer graphics consider control points cross product cubic Bezier curve segments defined determinant direction cosines discover dot product equal Euler example frame of reference functions given graphs Hessian normal form homogeneous coordinates illustrate intersection point line equation line segments linear interpolation magnitude mathematician mathematics matrix form multiplying normal vector number line orientation origin pair parallelogram parameter Pascal's triangle perspective projection pitch plane point of intersection polygon polynomial terms position vector quaternion relative represented result right-hand roll rotate a point scalar scaling sequence shape shown in Figure shows simple sine rule slope straight line Substituting subtraction surface normal surface patch Theorem of Pythagoras transform translation unit vector vertex vertices virtual camera world space x-axis z-axis z-coordinates zero