## Rotations, mirrorsymmetry and the scalar product

In the last post we have seen that scalar products between a pixel’s position in the output image and certain vectors e define periodic and quasi-periodic designs. We want symmetric images and thus we have to see how the scalar product changes when we rotate or mirror the plane. This is nothing new to you, but I prefer to define everything clearly, because I have always difficulties with coordinate transformations and the like. Better a fussy post than a fuzzy blog!

I am writing vectors of unit length and an angle α with the x-axis like that: The position (x,y) of a pixel in the output image can then be written as a vector where I am essentially using polar coordinates. r is the length of the vector and φ its angle with the x-axis. The scalar product is then We now look at rotations. They are matrices where Δ is the angle of rotation. A rotation changes the angle of a vector and it changes the value of scalar products This is almost trivial. The scalar product of a rotated vector with a second vector is the same as the scalar product of the original vector with the second vector rotated by the opposite angle. But this becomes important when we look at rotational symmetry and color symmetries.

Mirror symmetry is similar. The mirror image of (x,y) using the x-axis as mirror axis is (x,-y). As a matrix we have and thus we can write and the scalar product changes like this As expected, the scalar product of the mirror image of a vector with another vector is the same as the scalar product of the original vector with the mirror image of the second vector.

Inversion changes a vector into its opposite. It is simply a rotation by 180 degrees. Using radians for angles and the above relations for the scalar product of rotated vectors apply too.

This is it. The short notations for rotations and mirror symmetry will be useful in further discussions.

This entry was posted in Anamorphosis, Kaleidoscopes, programming, Tilings and tagged , , . Bookmark the permalink.

This site uses Akismet to reduce spam. Learn how your comment data is processed.