Homogeneous Notation
This page was last modified 2007-02-15 09:41:59 by Puchu.Net user Choco. (Show history)

Homogeneous notation is used during transformations of both vectors and points. In homogeneous coordinates a point or a vector is expressed as \mathbf{p} = (p_{x}, p_{y}, p_{z}, p_{w}).

Contents

Points and Vectors

Points have component p_{w} = 1 and vectors have p_{w} = 0.

Homogeneous Form

Normal rotation, scaling and shear transformation matrices are 3 \times 3, these matrices are augmented into the homogeneous form, a 4 \times 4 matrix that encapsulates all possible transforms we can perform:

\mathbf{M_{4\times4}}=\left(\begin{array}{cccc}
m_{00} & m_{01} & m_{02} & 0 \\
m_{10} & m_{11} & m_{12} & 0 \\
m_{20} & m_{21} & m_{22} & 0 \\
0 & 0 & 0 & 1 \\
</p>
\end{array}\right)

A translation matrix that translates a point by a vector \mathbf{t} is:

\mathbf{T}=\left(\begin{array}{cccc}
1 & 0 & 0 & t_{x} \\
0 & 1 & 0 & t_{y} \\
0 & 0 & 1 & t_{z} \\
0 & 0 & 0 & 1 \\
</p>
\end{array}\right)

Matrix-matrix multiplications and matrix-vector multiplications are done following normal rules of matrix operations. By using homogeneous forms when doing calculations, a vector \mathbf{v}=(v_{x},v_{y},v_{z},0) is not translated because the last column is zero. This is what we want, because a vector points in a direction and therefore translation has no meaning. However, if last column is one, then it is a point affected by the homogeneous transform. Using homogeneous coordinates to represent both points and vectors, and always using transformation matrices in homogeneous forms allow us to work with points and vectors in the same manner.

Homogenization

In projections, p_{w} has values other than 0 or 1, and the actual coordinate of the point is done through homogenization, or dividing all components by p_{w}. In other words, once we calculate p_{w}, the projected point is then \mathbf{p} = (\frac{p_{x}}{p_{w}}, \frac{p_{y}}{p_{w}}, \frac{p_{z}}{p_{w}}, 1).

References

  1. Akenine-Moller, Tomas and Eric Haines, Real-Time Rendering 2nd Edition, A K Peters: 731-732.
  2. Wikipedia contributors. Homogeneous coordinates. Feb. 15, 2007 <http://en.wikipedia.org/wiki/Homogeneous_coordinates>.
Puchu.Net

Document is accessible from http://www.puchu.net. © 2002-2010 Sean Yang, Karen Yang, Don Yang and/or respective authors, all rights reserverd.

This material may contain (biased) opinions, inappropriate materials for numerous individuals, work of other authors from the internet, links that refer to other web documents and resources, or origial work that cannot be use for personal or commercial purposes. Please respect the work of original authors.


Creative Commons License
Powered By MediaWiki

© 2002-2010 Sean Yang, all rights reserved.