|
|
1 | (4) |
|
1.1 Mathematics for Computer Graphics |
|
|
1 | (1) |
|
1.2 Understanding Mathematics |
|
|
1 | (1) |
|
1.3 What Makes Mathematics Difficult? |
|
|
2 | (1) |
|
1.4 Does Mathematics Exist Outside Our Brains? |
|
|
2 | (1) |
|
|
3 | (2) |
|
|
5 | (26) |
|
|
5 | (1) |
|
|
5 | (1) |
|
|
5 | (1) |
|
|
6 | (1) |
|
|
7 | (1) |
|
|
8 | (2) |
|
2.6.1 The Arithmetic of Positive and Negative Numbers |
|
|
9 | (1) |
|
2.7 Observations and Axioms |
|
|
10 | (1) |
|
|
10 | (1) |
|
|
10 | (1) |
|
|
11 | (1) |
|
2.8 The Base of a Number System |
|
|
11 | (8) |
|
|
11 | (1) |
|
|
12 | (1) |
|
|
13 | (1) |
|
2.8.4 Hexadecimal Numbers |
|
|
14 | (3) |
|
2.8.5 Adding Binary Numbers |
|
|
17 | (1) |
|
2.8.6 Subtracting Binary Numbers |
|
|
18 | (1) |
|
|
19 | (9) |
|
|
19 | (1) |
|
|
19 | (1) |
|
|
20 | (1) |
|
|
20 | (1) |
|
|
20 | (1) |
|
2.9.6 Algebraic and Transcendental Numbers |
|
|
20 | (1) |
|
|
21 | (4) |
|
|
25 | (2) |
|
2.9.9 Transcendental and Algebraic Numbers |
|
|
27 | (1) |
|
|
27 | (1) |
|
|
28 | (1) |
|
|
29 | (2) |
|
2.11.1 Algebraic Expansion |
|
|
29 | (1) |
|
2.11.2 Binary Subtraction |
|
|
29 | (1) |
|
|
29 | (1) |
|
|
30 | (1) |
|
|
31 | (20) |
|
|
31 | (1) |
|
|
32 | (5) |
|
3.2.1 Solving the Roots of a Quadratic Equation |
|
|
33 | (4) |
|
|
37 | (1) |
|
|
37 | (1) |
|
|
38 | (2) |
|
|
40 | (1) |
|
|
40 | (6) |
|
3.6.1 Explicit and Implicit Equations |
|
|
40 | (1) |
|
|
41 | (1) |
|
|
42 | (1) |
|
3.6.4 Function Domains and Ranges |
|
|
43 | (1) |
|
3.6.5 Odd and Even Functions |
|
|
44 | (1) |
|
|
45 | (1) |
|
|
46 | (1) |
|
|
46 | (5) |
|
3.8.1 Algebraic Manipulation |
|
|
46 | (1) |
|
3.8.2 Solving a Quadratic Equation |
|
|
47 | (2) |
|
|
49 | (2) |
|
|
51 | (14) |
|
|
51 | (1) |
|
|
51 | (1) |
|
4.3 Units of Angular Measurement |
|
|
51 | (1) |
|
4.4 The Trigonometric Ratios |
|
|
52 | (3) |
|
|
55 | (1) |
|
4.5 Inverse Trigonometric Ratios |
|
|
55 | (2) |
|
4.6 Trigonometric Identities |
|
|
57 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
4.9 Compound-Angle Identities |
|
|
59 | (3) |
|
4.9.1 Double-Angle Identities |
|
|
60 | (1) |
|
4.9.2 Multiple-Angle Identities |
|
|
61 | (1) |
|
4.9.3 Half-Angle Identities |
|
|
62 | (1) |
|
4.10 Perimeter Relationships |
|
|
62 | (1) |
|
|
63 | (2) |
|
|
65 | (12) |
|
|
65 | (1) |
|
|
65 | (1) |
|
|
66 | (1) |
|
|
66 | (1) |
|
|
67 | (2) |
|
|
67 | (1) |
|
|
68 | (1) |
|
5.6 Theorem of Pythagoras in 2D |
|
|
69 | (1) |
|
5.7 3D Cartesian Coordinates |
|
|
69 | (1) |
|
5.7.1 Theorem of Pythagoras in 3D |
|
|
70 | (1) |
|
|
70 | (1) |
|
5.9 Spherical Polar Coordinates |
|
|
71 | (1) |
|
5.10 Cylindrical Coordinates |
|
|
72 | (1) |
|
|
73 | (1) |
|
|
73 | (4) |
|
|
73 | (1) |
|
5.12.2 Distance Between Two Points |
|
|
74 | (1) |
|
|
74 | (1) |
|
5.12.4 Spherical Polar Coordinates |
|
|
75 | (1) |
|
5.12.5 Cylindrical Coordinates |
|
|
75 | (2) |
|
|
77 | (18) |
|
|
77 | (1) |
|
6.2 Linear Equations with Two Variables |
|
|
78 | (3) |
|
6.3 Linear Equations with Three Variables |
|
|
81 | (7) |
|
|
87 | (1) |
|
6.4 Mathematical Notation |
|
|
88 | (3) |
|
|
88 | (1) |
|
6.4.2 Order of a Determinant |
|
|
89 | (1) |
|
6.4.3 Value of a Determinant |
|
|
89 | (1) |
|
6.4.4 Properties of Determinants |
|
|
90 | (1) |
|
|
91 | (1) |
|
|
91 | (4) |
|
6.6.1 Determinant Expansion |
|
|
91 | (1) |
|
6.6.2 Complex Determinant |
|
|
92 | (1) |
|
|
92 | (1) |
|
6.6.4 Simultaneous Equations |
|
|
93 | (2) |
|
|
95 | (24) |
|
|
95 | (1) |
|
|
95 | (1) |
|
|
96 | (3) |
|
|
96 | (1) |
|
7.3.2 Graphical Representation of Vectors |
|
|
97 | (1) |
|
7.3.3 Magnitude of a Vector |
|
|
98 | (1) |
|
|
99 | (13) |
|
7.4.1 Vector Manipulation |
|
|
100 | (1) |
|
|
100 | (1) |
|
7.4.3 Vector Addition and Subtraction |
|
|
101 | (1) |
|
|
102 | (1) |
|
|
102 | (1) |
|
|
103 | (1) |
|
|
103 | (1) |
|
|
104 | (1) |
|
7.4.9 The Dot Product in Lighting Calculations |
|
|
105 | (1) |
|
7.4.10 The Scalar Product in Back-Face Detection |
|
|
106 | (1) |
|
7.4.11 The Vector Product |
|
|
107 | (5) |
|
7.4.12 The Right-Hand Rule |
|
|
112 | (1) |
|
7.5 Deriving a Unit Normal Vector for a Triangle |
|
|
112 | (1) |
|
|
113 | (2) |
|
7.6.1 Calculating 2D Areas |
|
|
114 | (1) |
|
|
115 | (1) |
|
|
115 | (4) |
|
|
115 | (1) |
|
|
115 | (1) |
|
|
116 | (1) |
|
7.8.4 Angle Between Two Vectors |
|
|
116 | (1) |
|
|
116 | (3) |
|
|
119 | (34) |
|
|
119 | (1) |
|
|
119 | (3) |
|
|
122 | (8) |
|
8.3.1 Matrix Dimension or Order |
|
|
122 | (1) |
|
|
123 | (1) |
|
|
123 | (1) |
|
|
123 | (1) |
|
|
123 | (1) |
|
|
124 | (1) |
|
|
124 | (1) |
|
8.3.8 Determinant of a Matrix |
|
|
125 | (1) |
|
|
125 | (2) |
|
|
127 | (1) |
|
8.3.11 Antisymmetric Matrix |
|
|
128 | (2) |
|
8.4 Matrix Addition and Subtraction |
|
|
130 | (1) |
|
8.4.1 Scalar Multiplication |
|
|
130 | (1) |
|
|
131 | (4) |
|
8.5.1 Row and Column Vectors |
|
|
131 | (1) |
|
8.5.2 Row Vector and a Matrix |
|
|
132 | (1) |
|
8.5.3 Matrix and a Column Vector |
|
|
133 | (1) |
|
|
133 | (1) |
|
8.5.5 Rectangular Matrices |
|
|
134 | (1) |
|
|
135 | (7) |
|
8.6.1 Inverting a Pair of Matrices |
|
|
141 | (1) |
|
|
142 | (1) |
|
|
143 | (1) |
|
|
143 | (1) |
|
|
144 | (9) |
|
|
144 | (1) |
|
|
144 | (1) |
|
8.10.3 Solving Two Equations Using Matrices |
|
|
145 | (1) |
|
8.10.4 Solving Three Equations Using Matrices |
|
|
146 | (1) |
|
8.10.5 Solving Two Complex Equations |
|
|
147 | (1) |
|
8.10.6 Solving Three Complex Equations |
|
|
147 | (1) |
|
8.10.7 Solving Two Complex Equations |
|
|
148 | (1) |
|
8.10.8 Solving Three Complex Equations |
|
|
149 | (4) |
|
|
153 | (64) |
|
|
153 | (1) |
|
|
153 | (1) |
|
|
154 | (2) |
|
|
154 | (1) |
|
|
154 | (1) |
|
|
155 | (1) |
|
9.4 Transforms as Matrices |
|
|
156 | (1) |
|
9.4.1 Systems of Notation |
|
|
156 | (1) |
|
9.5 Homogeneous Coordinates |
|
|
156 | (11) |
|
|
158 | (1) |
|
|
158 | (1) |
|
|
159 | (2) |
|
|
161 | (1) |
|
|
162 | (2) |
|
|
164 | (1) |
|
|
165 | (1) |
|
9.5.8 2D Rotation About an Arbitrary Point |
|
|
166 | (1) |
|
|
167 | (7) |
|
|
167 | (1) |
|
|
167 | (1) |
|
|
168 | (4) |
|
|
172 | (1) |
|
9.6.5 Rotating About an Axis |
|
|
173 | (1) |
|
|
174 | (1) |
|
|
174 | (3) |
|
|
174 | (2) |
|
|
176 | (1) |
|
|
177 | (1) |
|
9.8 Positioning the Virtual Camera |
|
|
177 | (6) |
|
|
178 | (3) |
|
|
181 | (2) |
|
9.9 Rotating a Point About an Arbitrary Axis |
|
|
183 | (18) |
|
|
183 | (7) |
|
|
190 | (1) |
|
9.9.3 Adding and Subtracting Quaternions |
|
|
191 | (1) |
|
9.9.4 Multiplying Quaternions |
|
|
192 | (1) |
|
|
192 | (1) |
|
9.9.6 The Inverse Quaternion |
|
|
193 | (1) |
|
|
193 | (1) |
|
9.9.8 Rotating Points About an Axis |
|
|
193 | (4) |
|
9.9.9 Roll, Pitch and Yaw Quaternions |
|
|
197 | (2) |
|
9.9.10 Quaternions in Matrix Form |
|
|
199 | (1) |
|
9.9.11 Frames of Reference |
|
|
200 | (1) |
|
9.10 Transforming Vectors |
|
|
201 | (1) |
|
|
202 | (2) |
|
9.12 Perspective Projection |
|
|
204 | (2) |
|
|
206 | (1) |
|
|
206 | (11) |
|
9.14.1 2D Scaling Transform |
|
|
206 | (1) |
|
9.14.2 2D Scale and Translate |
|
|
206 | (1) |
|
9.14.3 3D Scaling Transform |
|
|
207 | (1) |
|
|
208 | (1) |
|
9.14.5 2D Rotation About a Point |
|
|
209 | (1) |
|
9.14.6 Determinant of the Rotate Transform |
|
|
209 | (1) |
|
9.14.7 Determinant of the Shear Transform |
|
|
209 | (1) |
|
9.14.8 Yaw, Pitch and Roll Transforms |
|
|
210 | (1) |
|
9.14.9 3D Rotation About an Axis |
|
|
210 | (1) |
|
9.14.10 3D Rotation Transform Matrix |
|
|
211 | (1) |
|
9.14.11 2D Change of Axes |
|
|
211 | (1) |
|
9.14.12 3D Change of Axes |
|
|
212 | (1) |
|
9.14.13 Rotate a Point About an Axis |
|
|
213 | (1) |
|
9.14.14 Perspective Projection |
|
|
214 | (3) |
|
|
217 | (16) |
|
|
217 | (1) |
|
|
217 | (1) |
|
10.3 Linear Interpolation |
|
|
218 | (2) |
|
10.4 Non-linear Interpolation |
|
|
220 | (7) |
|
10.4.1 Trigonometric Interpolation |
|
|
220 | (1) |
|
10.4.2 Cubic Interpolation |
|
|
221 | (6) |
|
10.5 Interpolating Vectors |
|
|
227 | (3) |
|
10.6 Interpolating Quaternions |
|
|
230 | (2) |
|
|
232 | (1) |
|
|
233 | (26) |
|
|
233 | (1) |
|
|
233 | (1) |
|
|
234 | (1) |
|
|
234 | (1) |
|
|
235 | (7) |
|
11.5.1 Bernstein Polynomials |
|
|
235 | (3) |
|
11.5.2 Quadratic Bezier Curves |
|
|
238 | (1) |
|
11.5.3 Cubic Bernstein Polynomials |
|
|
239 | (3) |
|
11.6 A Recursive Bezier Formula |
|
|
242 | (1) |
|
11.7 Bezier Curves Using Matrices |
|
|
243 | (4) |
|
11.7.1 Linear Interpolation |
|
|
244 | (3) |
|
|
247 | (4) |
|
|
247 | (3) |
|
|
250 | (1) |
|
11.8.3 Non-uniform B-Splines |
|
|
251 | (1) |
|
11.8.4 Non-uniform Rational B-Splines |
|
|
251 | (1) |
|
|
251 | (6) |
|
11.9.1 Planar Surface Patch |
|
|
251 | (2) |
|
11.9.2 Quadratic Bezier Surface Patch |
|
|
253 | (2) |
|
11.9.3 Cubic Bezier Surface Patch |
|
|
255 | (2) |
|
|
257 | (2) |
|
|
259 | (48) |
|
|
259 | (1) |
|
|
259 | (10) |
|
|
260 | (1) |
|
12.2.2 Intercept Theorems |
|
|
260 | (1) |
|
|
261 | (1) |
|
|
261 | (1) |
|
12.2.5 Centre of Gravity of a Triangle |
|
|
262 | (1) |
|
12.2.6 Isosceles Triangle |
|
|
262 | (1) |
|
12.2.7 Equilateral Triangle |
|
|
263 | (1) |
|
|
263 | (1) |
|
|
263 | (1) |
|
12.2.10 Theorem of Pythagoras |
|
|
264 | (1) |
|
|
265 | (1) |
|
|
265 | (1) |
|
|
265 | (1) |
|
|
266 | (1) |
|
|
266 | (1) |
|
|
267 | (2) |
|
12.3 2D Analytic Geometry |
|
|
269 | (4) |
|
12.3.1 Equation of a Straight Line |
|
|
269 | (1) |
|
12.3.2 The Hessian Normal Form |
|
|
270 | (2) |
|
12.3.3 Space Partitioning |
|
|
272 | (1) |
|
12.3.4 The Hessian Normal Form from Two Points |
|
|
272 | (1) |
|
|
273 | (3) |
|
12.4.1 Intersecting Straight Lines |
|
|
273 | (1) |
|
12.4.2 Intersecting Line Segments |
|
|
274 | (2) |
|
12.5 Point Inside a Triangle |
|
|
276 | (4) |
|
12.5.1 Area of a Triangle |
|
|
276 | (2) |
|
12.5.2 Hessian Normal Form |
|
|
278 | (2) |
|
12.6 Intersection of a Circle with a Straight Line |
|
|
280 | (2) |
|
|
282 | (4) |
|
12.7.1 Equation of a Straight Line |
|
|
282 | (1) |
|
12.7.2 Intersecting Two Straight Lines |
|
|
283 | (3) |
|
|
286 | (9) |
|
12.8.1 Cartesian Form of the Plane Equation |
|
|
286 | (3) |
|
12.8.2 General Form of the Plane Equation |
|
|
289 | (1) |
|
12.8.3 Parametric Form of the Plane Equation |
|
|
289 | (2) |
|
12.8.4 Converting from the Parametric to the General Form |
|
|
291 | (2) |
|
12.8.5 Plane Equation from Three Points |
|
|
293 | (2) |
|
|
295 | (11) |
|
12.9.1 Intersection of Three Planes |
|
|
298 | (3) |
|
12.9.2 Angle Between Two Planes |
|
|
301 | (1) |
|
12.9.3 Angle Between a Line and a Plane |
|
|
302 | (2) |
|
12.9.4 Intersection of a Line with a Plane |
|
|
304 | (2) |
|
|
306 | (1) |
|
13 Barycentric Coordinates |
|
|
307 | (30) |
|
|
307 | (1) |
|
|
307 | (1) |
|
|
308 | (1) |
|
13.4 Ratios and Proportion |
|
|
309 | (1) |
|
|
310 | (6) |
|
13.6 Linear Interpolation |
|
|
316 | (7) |
|
13.7 Convex Hull Property |
|
|
323 | (1) |
|
|
324 | (9) |
|
|
333 | (2) |
|
13.10 Bezier Curves and Patches |
|
|
335 | (1) |
|
|
336 | (1) |
|
|
337 | (36) |
|
|
337 | (1) |
|
|
337 | (1) |
|
14.3 Symmetric and Antisymmetric Functions |
|
|
338 | (1) |
|
14.4 Trigonometric Foundations |
|
|
339 | (2) |
|
14.5 Vectorial Foundations |
|
|
341 | (1) |
|
14.6 Inner and Outer Products |
|
|
341 | (2) |
|
14.7 The Geometric Product in 2D |
|
|
343 | (2) |
|
14.8 The Geometric Product in 3D |
|
|
345 | (2) |
|
14.9 The Outer Product of Three 3D Vectors |
|
|
347 | (1) |
|
|
348 | (1) |
|
|
349 | (1) |
|
14.12 Grades, Pseudoscalars and Multivectors |
|
|
349 | (2) |
|
14.13 Redefining the Inner and Outer Products |
|
|
351 | (1) |
|
14.14 The Inverse of a Vector |
|
|
351 | (2) |
|
14.15 The Imaginary Properties of the Outer Product |
|
|
353 | (2) |
|
|
355 | (1) |
|
14.17 The Relationship Between the Vector Product and the Outer Product |
|
|
356 | (1) |
|
14.18 The Relationship Between Quaternions and Bivectors |
|
|
357 | (1) |
|
14.19 Reflections and Rotations |
|
|
358 | (4) |
|
|
358 | (1) |
|
|
359 | (1) |
|
|
360 | (2) |
|
|
362 | (3) |
|
|
365 | (7) |
|
|
365 | (1) |
|
|
366 | (1) |
|
14.21.3 A Point Perpendicular to a Line |
|
|
367 | (2) |
|
14.21.4 Reflecting a Vector About a Vector |
|
|
369 | (1) |
|
14.21.5 A Point Above or Below a Plane |
|
|
370 | (2) |
|
|
372 | (1) |
|
|
373 | (58) |
|
|
373 | (1) |
|
|
373 | (1) |
|
15.3 Small Numerical Quantities |
|
|
373 | (2) |
|
15.4 Equations and Limits |
|
|
375 | (9) |
|
15.4.1 Quadratic Function |
|
|
375 | (1) |
|
|
376 | (2) |
|
15.4.3 Functions and Limits |
|
|
378 | (2) |
|
15.4.4 Graphical Interpretation of the Derivative |
|
|
380 | (1) |
|
15.4.5 Derivatives and Differentials |
|
|
381 | (1) |
|
15.4.6 Integration and Antiderivatives |
|
|
382 | (2) |
|
|
384 | (1) |
|
15.6 Differentiating Groups of Functions |
|
|
385 | (12) |
|
|
385 | (2) |
|
15.6.2 Function of a Function |
|
|
387 | (4) |
|
|
391 | (4) |
|
15.6.4 Function Quotients |
|
|
395 | (2) |
|
15.7 Differentiating Implicit Functions |
|
|
397 | (3) |
|
15.8 Differentiating Exponential and Logarithmic Functions |
|
|
400 | (4) |
|
15.8.1 Exponential Functions |
|
|
400 | (3) |
|
15.8.2 Logarithmic Functions |
|
|
403 | (1) |
|
15.9 Differentiating Trigonometric Functions |
|
|
404 | (6) |
|
15.9.1 Differentiating tan |
|
|
404 | (2) |
|
15.9.2 Differentiating esc |
|
|
406 | (1) |
|
15.9.3 Differentiating sec |
|
|
406 | (1) |
|
15.9.4 Differentiating cot |
|
|
407 | (1) |
|
15.9.5 Differentiating arcsin, arccos and arctan |
|
|
408 | (1) |
|
15.9.6 Differentiating arccsc, arcsec and arccot |
|
|
409 | (1) |
|
15.10 Differentiating Hyperbolic Functions |
|
|
410 | (3) |
|
15.10.1 Differentiating sinh, cosh and tanh |
|
|
412 | (1) |
|
|
413 | (1) |
|
15.12 Higher Derivatives of a Polynomial |
|
|
413 | (3) |
|
15.13 Identifying a Local Maximum or Minimum |
|
|
416 | (2) |
|
15.14 Partial Derivatives |
|
|
418 | (8) |
|
15.14.1 Visualising Partial Derivatives |
|
|
422 | (1) |
|
15.14.2 Mixed Partial Derivatives |
|
|
423 | (3) |
|
|
426 | (2) |
|
|
428 | (1) |
|
|
429 | (2) |
|
|
431 | (40) |
|
|
431 | (1) |
|
|
431 | (1) |
|
16.3 Integration Techniques |
|
|
432 | (21) |
|
16.3.1 Continuous Functions |
|
|
432 | (1) |
|
16.3.2 Difficult Functions |
|
|
432 | (2) |
|
16.3.3 Trigonometric Identities |
|
|
434 | (2) |
|
|
436 | (1) |
|
16.3.5 Completing the Square |
|
|
437 | (2) |
|
16.3.6 The Integrand Contains a Derivative |
|
|
439 | (1) |
|
16.3.7 Converting the Integrand into a Series of Fractions |
|
|
440 | (1) |
|
16.3.8 Integration by Parts |
|
|
441 | (5) |
|
16.3.9 Integration by Substitution |
|
|
446 | (4) |
|
16.3.10 Partial Fractions |
|
|
450 | (3) |
|
|
453 | (1) |
|
|
453 | (9) |
|
16.6 Positive and Negative Areas |
|
|
462 | (1) |
|
16.7 Area Between Two Functions |
|
|
463 | (2) |
|
16.8 Areas with the y-Axis |
|
|
465 | (1) |
|
16.9 Area with Parametric Functions |
|
|
466 | (2) |
|
|
468 | (2) |
|
|
470 | (1) |
|
|
471 | (20) |
|
|
471 | (1) |
|
17.2 Area of Regular Polygon |
|
|
471 | (1) |
|
|
472 | (1) |
|
17.4 Dihedral Angle of a Dodecahedron |
|
|
473 | (1) |
|
17.5 Vector Normal to a Triangle |
|
|
474 | (1) |
|
17.6 Area of a Triangle Using Vectors |
|
|
475 | (1) |
|
17.7 General Form of the Line Equation from Two Points |
|
|
475 | (1) |
|
17.8 Angle Between Two Straight Lines |
|
|
476 | (1) |
|
17.9 Test if Three Points Lie on a Straight Line |
|
|
477 | (1) |
|
17.10 Position and Distance of the Nearest Point on a Line to a Point |
|
|
478 | (2) |
|
17.11 Position of a Point Reflected in a Line |
|
|
480 | (3) |
|
17.12 Intersection of a Line and a Sphere |
|
|
483 | (4) |
|
17.13 Sphere Touching a Plane |
|
|
487 | (2) |
|
|
489 | (2) |
|
|
491 | (2) |
Appendix A Limit of (sinθ)/θ |
|
493 | (4) |
Appendix B Integrating cosnθ |
|
497 | (2) |
Index |
|
499 | |