The Compendium Geometry is an eBook providing facts, formulas and explanations about geometry.

Homogeneous Coordinates

Homogeneous coordinates are a simple and efficient means to perform geometric transformations by matrix multiplication. The entire set of geometric transformations, can be combined into a 4×4 matrix (or into a 3×3 matrix in the case of two-dimensional coordinates):

Left: transformation matrix for two-dimensional coordinates; right: transformation matrix for three-dimensional coordinates; R - rotation, S - scaling, P - perspective, T - translation, G - global scaling.

Homogeneous coordinates exhibit several benefits:

  • uniform treatment of all transformations
  • complex transformations can be built by combining individual simple transformations by matrix multiplication
  • a complex transformation can be performed by first calculating the overall transformation matrix by multiplying the individual matrices, and then applying the resulting matrix to the data
  • simple inversion of the transformations by inverting the transformation matrix
  • the involved 4×4 matrices are supported by various standards and graphics hardware
Homogeneous coordinates are created by adding an extra dimension according to the following scheme (homogeneous coordinates are not unique, in most cases h is set to 1):

  Point P
2D P = [xh, yh, h]
3D P = [xh, yh, zh, h]

In order to apply homogeneous transformations the (augmented) original data vector is multiplied by the transformation matrix. The resulting 3rd or 4th coordinate is either discarded or used to create a perspective view (see 3D projections).

Last Update: 2010-12-06