Skip to main content
Top

2019 | Book

Calculus for Computer Graphics

insite
SEARCH

About this book

Students studying different branches of computer graphics have to be familiar with geometry, matrices, vectors, rotation transforms, quaternions, curves and surfaces and as computer graphics software becomes increasingly sophisticated, calculus is also being used to resolve its associated problems.

In this 2nd edition, the author extends the scope of the original book to include applications of calculus in the areas of arc-length parameterisation of curves, geometric continuity, tangent and normal vectors, and curvature. The author draws upon his experience in teaching mathematics to undergraduates to make calculus appear no more challenging than any other branch of mathematics. He introduces the subject by examining how functions depend upon their independent variables, and then derives the appropriate mathematical underpinning and definitions. This gives rise to a function’s derivative and its antiderivative, or integral. Using the idea of limits, the reader is introduced to derivatives and integrals of many common functions. Other chapters address higher-order derivatives, partial derivatives, Jacobians, vector-based functions, single, double and triple integrals, with numerous worked examples, and over a hundred and seventy colour illustrations.

This book complements the author’s other books on mathematics for computer graphics, and assumes that the reader is familiar with everyday algebra, trigonometry, vectors and determinants. After studying this book, the reader should understand calculus and its application within the world of computer graphics, games and animation.

Table of Contents

Frontmatter
Chapter 1. Introduction
Abstract
Well this is an easy question to answer. Basically, Calculus has two parts: differential and integral. Differential Calculus is used for computing a function’s rate of change relative to one of its arguments. Generally, one begins with a function such as f(x), and as x changes, a corresponding change occurs in f(x). Differentiating f(x) with respect to x, produces a second function \(f'(x)\), which gives the rate of change of f(x) for any x. For example, and without explaining why, if \(f(x)=x^2\), then \(f'(x)=2x\), and when \(x=3\), f(x) is changing \(2\times 3=6\) times faster than x. Which is rather neat!
John Vince
Chapter 2. Functions
Abstract
In this chapter the notion of a function is introduced as a tool for generating one numerical quantity from another. In particular, we look at equations, their variables and any possible sensitive conditions. This leads toward the idea of how fast a function changes relative to its independent variable. The second part of the chapter introduces two major operations of Calculus: differentiating, and its inverse, integrating. This is performed without any rigorous mathematical underpinning, and permits the reader to develop an understanding of Calculus without using limits.
John Vince
Chapter 3. Limits and Derivatives
Abstract
Some quantities, such as the area of a circle or an ellipse, cannot be written precisely, as they incorporate \(\pi \), which is irrational, but also transcendental; i.e. not a root of a single-variable polynomial whose coefficients are all integers. However, an approximate value can be obtained by devising a definition that includes a parameter that is made infinitesimally small. The techniques of limits and infinitesimals have been used in mathematics for over two-thousand years, and paved the way towards today’s Calculus.
John Vince
Chapter 4. Derivatives and Antiderivatives
Abstract
Mathematical functions come in all sorts of shapes and sizes. Sometimes they are described explicitly where y equals some function of its independent variable(s), such as
$$ y=x\sin x $$
or implicitly where y, and its independent variable(s) are part of an equation, such as
$$ x^2+y^2=10. $$
John Vince
Chapter 5. Higher Derivatives
Abstract
There are three sections to this chapter: The first shows what happens when a function is repeatedly differentiated; the second shows how these higher derivatives resolve local minimum and maximum conditions; and the third section provides a physical interpretation for these derivatives. Let’s begin by finding the higher derivatives of simple polynomials.
John Vince
Chapter 6. Partial Derivatives
Abstract
In this chapter we investigate derivatives of functions with more than one independent variable, and how such derivatives are annotated. We also explore the second-order form of these derivatives.
John Vince
Chapter 7. Integral Calculus
Abstract
In this chapter I develop the idea that integration is the inverse of differentiation, and examine standard algebraic strategies for integrating functions, where the derivative is unknown; these include simple algebraic manipulation, trigonometric identities, integration by parts, integration by substitution and integration using partial fractions.
John Vince
Chapter 8. Area Under a Graph
Abstract
The ability to calculate the area under a graph is one of the most important discoveries of integral Calculus. Prior to Calculus, area was computed by dividing a zone into very small strips and summing the individual areas. The accuracy of the result is improved simply by making the strips smaller and smaller, taking the result towards some limiting value. In this chapter I show how integral Calculus provides a way to compute the area between a function’s graph and the x- and y-axis.
John Vince
Chapter 9. Arc Length and Parameterisation of Curves
Abstract
In previous chapters we have seen how Calculus reveals the slope and the area under a function’s graph, and it should be no surprise that it can be used to compute the arc length of a continuous function. However, although the formula for the arc length results in a simple integrand, it is not always possible to integrate, and other numerical techniques have to be used.
John Vince
Chapter 10. Surface Area
Abstract
In Chap. 8 I showed how to compute the area under a graph using integration, and in this chapter I describe how single and double integration are used to compute surface areas and regions bounded by functions. Also in this chapter, we come across Jacobians, which are used to convert an integral from one coordinate system to another. To start, let’s examine surfaces of revolution.
John Vince
Chapter 11. Volume
Abstract
In this chapter I introduce four techniques for calculating the volume of various geometric objects. Two techniques are associated with solids of revolution, where an object is cut into flat slices or concentric cylindrical shells and summed over the object’s extent using a single integral. The third technique employs two integrals where the first computes the area of a slice through a volume, and the second sums these areas over the object’s extent. The fourth technique employs three integrals to sum the volume of an object. We start with the slicing technique.
John Vince
Chapter 12. Vector-Valued Functions
Abstract
So far, all the functions we have differentiated or integrated have been real-valued functions, such as
$$ f(x)=x+\sin x $$
where x is a real value.
John Vince
Chapter 13. Tangent and Normal Vectors
Abstract
In this chapter I describe how to calculate tangent and normal vectors on various curves and surfaces. I begin with the notation used to describe vector-valued functions and definitions for a tangent and normal vector. This includes an introduction to the grad operator, and how it is used to compute the gradient of a scalar field. I then show how these vectors are computed for a line, parabola, circle, ellipse, sine curve, cosh curve, helix, Bézier curve, bilinear patch, quadratic Bézier patch, sphere and a torus.
John Vince
Chapter 14. Continuity
Abstract
In this chapter I explain how geometric continuity is ensured between segments of B-splines and Bézier curves. To begin the analysis, we return to the definition of uniform B-splines and how polynomials are chosen to provide the geometric continuity between curve segments.
John Vince
Chapter 15. Curvature
Abstract
In this chapter I describe the mathematical definition of curvature, and show how to compute the curvature of a circle, helix, parabola, sine curve, Bézier curve, and a graph described by an explicit equation.
John Vince
Chapter 16. Conclusion
Abstract
Calculus is such a large subject, that everything one investigates leads to something else, and one is tempted to write about it and explain how and why it works. Consequently, when I started writing this book I had clear objectives about what to include and what to leave out. Having reached this final chapter, I feel that I have achieved this objective. There have been moments when I was tempted to include more topics and more examples and turn this book into similar books on Calculus that are extremely large and daunting to open.
John Vince
Backmatter
Metadata
Title
Calculus for Computer Graphics
Author
Prof. John Vince
Copyright Year
2019
Electronic ISBN
978-3-030-11376-6
Print ISBN
978-3-030-11375-9
DOI
https://doi.org/10.1007/978-3-030-11376-6