**Suppose**- we want to rotate around an arbitrary point
.
- Could derive a more general transformation matrix ...
- Alternative idea: Compose simple transformations
- Translate
*P*to origin - Rotate around origin
- Translate origin back to
*P*

- Translate
- Suppose
- The the desired transformation is
- Note where
*P*maps: to*P*. - Won't compute these matrices analytically;

Just use the basic transformations,

and run the matrix multiply numerically.

**Order is important!**-

*
Readings: Hearn and Baker, Section 5-3;
Red book, 5.4;
White book, 5.3
*

CS488/688: Introduction to Interactive Computer Graphics

University of Waterloo

Computer Graphics Lab