2017 | Book

# Mathematics for Computer Graphics

Author: Prof. John Vince

Publisher: Springer London

Book Series : Undergraduate Topics in Computer Science

2017 | Book

Author: Prof. John Vince

Publisher: Springer London

Book Series : Undergraduate Topics in Computer Science

John Vince explains a wide range of mathematical techniques and problem-solving strategies associated with computer games, computer animation, virtual reality, CAD and other areas of computer graphics in this completely revised and expanded fifth edition.

The first five chapters cover a general introduction, number sets, algebra, trigonometry and coordinate systems, which are employed in the following chapters on vectors, matrix algebra, transforms, interpolation, curves and patches, analytic geometry and barycentric coordinates. Following this, the reader is introduced to the relatively new topic of geometric algebra, followed by two chapters that introduce differential and integral calculus. Finally, there is a chapter on worked examples.

Mathematics for Computer Graphics covers all of the key areas of the subject, including:

· Number sets

· Algebra

· Trigonometry

· Coordinate systems

· Determinants

· Vectors

· Quaternions

· Matrix algebra

· Geometric transforms

· Interpolation

· Curves and surfaces

· Analytic geometry

· Barycentric coordinates

· Geometric algebra

· Differential calculus

· Integral calculus

This fifth edition contains over 120 worked examples and over 320 colour illustrations, which are central to the author’s descriptive writing style. Mathematics for Computer Graphics provides a sound understanding of the mathematics required for computer graphics, giving a fascinating insight into the design of computer graphics software and setting the scene for further reading of more advanced books and technical research papers.

Advertisement

Abstract

Computer graphics contains many areas of specialism, such as data visualisation, 2D computer animation, film special effects, computer games and 3D computer animation. Fortunately, not everyone working in computer graphics requires a knowledge of mathematics, but those that do, often look for a book that introduces them to some basic ideas of mathematics, without turning them into mathematicians.

Abstract

This chapter revises some basic ideas about counting and number systems, and how they are employed in the context of mathematics for computer graphics.

Abstract

Some people, including me, find learning a foreign language a real challenge; one of the reasons being the inconsistent rules associated with its syntax. For example, why is a table feminine in French, ‘la table’, and a bed masculine, ‘le lit’? They both have four legs! The rules governing natural language are continuously being changed by each generation, whereas mathematics appears to be logical and consistent.

Abstract

This chapter covers some basic features of trigonometry such as angular measure, trigonometric ratios, inverse ratios, trigonometric identities and various rules, with which the reader should be familiar.

Abstract

In this
chapter we revise Cartesian coordinates, axial systems, the distance between two points in space, and the area of simple 2D shapes. It also covers polar, spherical polar and cylindrical coordinate systems.

Abstract

When patterns of numbers or symbols occur over and over again, mathematicians often devise a way to simplify their description and assign a name to them. For example.

Abstract

This chapter provides a comprehensive introduction to vectors. It covers 2D and 3D vectors, unit vectors, position vectors, Cartesian vectors, vector magnitude, vector products, and area calculations. It also shows how vectors are used in lighting calculations and back-face detection.

Abstract

This
chapter introduces matrix algebra, which is a notation widely used in computer graphics. Matrices are used to scale, translate, reflect, shear and rotate 2D shapes and 3D objects, and like determinants, have their background in algebra and offer another way to represent and manipulate equations. Matrices can be added, subtracted and multiplied together, and even inverted, however, they must give the same result obtained through traditional algebraic techniques. Once you have understood the idea behind matrix notation, feel free to go to the next chapter and study their role in geometric transforms, and come back to the more advanced ideas in this chapter.

Abstract

This chapter shows how matrices are used to scale, translate, reflect, shear and rotate 2D shapes and 3D objects. The reader should try to understand the construction of the various matrices and recognise the role of each matrix element. After a little practice, it will be possible to define a wide variety of matrices without thinking about the underlying algebra.

Abstract

This chapter covers linear and non-linear interpolation of scalars, and includes trigonometric and cubic polynomials.

Abstract

In this chapter we investigate the foundations of curves and surface patches. This is a very large and complex subject and it will be impossible to delve too deeply. However, we can explore many of the ideas that are essential to understanding the mathematics behind 2D and 3D curves and how they are developed to produce surface patches. Once you have understood these ideas you will be able to read more advanced texts and develop a wider knowledge of the subject.

Abstract

This chapter explores some basic elements of geometry and analytic geometry that are frequently encountered in computer graphics.

Abstract

Cartesian coordinates are a fundamental concept in mathematics and are central to computer graphics. Such rectangular coordinates are just offsets relative to some origin.

Abstract

This can only be a brief introduction to geometric algebra as the subject really demands an entire book. Those readers who wish to pursue the subject further should consult the author’s books: Geometric Algebra for Computer Graphics or Geometric Algebra: An Algebraic System for Computer Games and Animation.

Abstract

Calculus is a very
large subject, and calculus books have a reputation for being heavy. Therefore, to minimise this book’s weight, and provide a gentle introduction to the subject, I have selected specific topics from my book Calculus for Computer Graphics, and condensed them into two chapters.

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.

Abstract

This chapter examines a variety of problems encountered in computer graphics and develops mathematical strategies for their solution. Such strategies may not be the most efficient, however, they will provide the reader with a starting point, which may be improved upon.

Abstract

In the previous 17 chapters I have attempted to introduce you to some of the important elements of mathematics employed in computer graphics. I knew from the start that this would be a challenge for two reasons: one was knowing where to start, and the other was where to stop.