A general rotation in two dimensions can be described by writing it in components parallel and
orthogonal to the vector to be rotated:
x' = x cos(phi) + x I sin(phi) = x [cos(phi) + I sin(phi)] = x exp(I phi) = exp(-I phi/2) x exp (I phi/2),
where I is the unit magnitude bivector of the rotation plane. As demonstrated elsewhere, xI = x.I (if x is in the I plane) will always be orthogonal to x. The last equality follows from II = -1, xI = -Ix, cos(phi/2)cos(phi/2) - sin(phi/2)sin(phi/2) = cos(phi) and 2sin(phi/2)cos(phi/2) = sin(phi). This "double sided" expression corresponds both to the descriptions of rotations by two reflections or by rotors.
You can change the bright red points interactively by dragging them with the mouse.
The basic idea for this applet stems from the "DEMOrotdefinition" in Dorst, Mann and Bouma's geometric algebra MATLAB tutorial GABLE.
Soli Deo Gloria. Created with Cinderella by E. Hitzer (Fukui).