Source:

  • Programmation des jeux 3D, André Lamotte, John Ratcliff, Mark Seminatore, Denise Tyler (Simon & Schuster Macmillan, 1995)

Translation matrix

$$ T = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ t_x & t_y & 1 \\ \end{pmatrix} $$

Scale matrix

$$ S = \begin{pmatrix} s_x & 0 & 0 \\ 0 & s_x & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} $$

Rotation matrix

$$ R = \begin{pmatrix} cos(\theta) & -sin(\theta) & 0 \\ sin(\theta) & cos(\theta) & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} $$

General transformation matrix

$$ R = \begin{pmatrix} s_x . cos(\theta) & s_x . -sin(\theta) & 0 \\ s_y sin(\theta) & s_y cos(\theta) & 0 \\ t_x & t_y & 1 \\ \end{pmatrix} $$