Vectors are a relatively new arrival to the world of mathematics, dating only from the nineteenth century. They provide us with some elegant and powerful techniques for computing angles between lines and the orientation of surfaces. They also provide a coherent framework for computing the behaviour of dynamic objects in computer animation and illumination models in rendering.
We often employ a single number to represent quantities that we use in our daily lives such as height, age, shoe size, waist and chest measurement. The magnitude of this number depends on our age and whether we use metric or imperial units. Such quantities are called scalars. In computer graphics scalar quantities include colour, height, width, depth, brightness, number of frames, etc.
On the other hand, there are some things that require more than one number to represent them: wind, force, weight, velocity and sound are just a few examples. These cannot be represented accurately by a single number. For example, any sailor knows that wind has a magnitude and a direction. The force we use to lift an object also has a value and a direction. Similarly, the velocity of a moving object is measured in terms of its speed (e.g., miles per hour) and a direction such as north-west. Sound, too, has intensity and a direction. These quantities are called vectors. In computer graphics, vectors generally require two or three numbers, and these are the only type we consider in this chapter.
Mathematicians such as Caspar Wessel (1745–1818), Jean Argand (1768 – 1822) and John Warren (1796–1852) were simultaneously exploring complex numbers and their graphical representation. And in 1843, Sir William Rowan Hamilton (1788–1856) made his breakthrough with quaternions. In 1853, Hamilton published his book Lectures on Quaternions in which he described terms such as vector, transvector and provector. Hamilton’s work was not widely accepted until in 1881, when the American mathematician Josiah Gibbs (1839–1903), published his treatise Vector Analysis, describing modern vector analysis.