# rotate45

`rotate45`

is a rarely used transform filter corresponding to the rotation by a multiple of 45°. The set of all 8 such multiples is called **C**and is discussed more explicitly here.

_{8}
`rotate45`

is invoked with a single argument filter:

rotate45F

This constructs all 8 of the rotations of *F* by multiples of 45° The `rotate45`

filter matches if any of these 8 transforms match.

Any square designator within *F* must represent all 64 squares, and is unchanged by 45° rotation. The only effect of such rotation is to modify directions filters and keywords. For example,

rotate45 ray up (R k)

matches a position if and only if one of the eight rotations of the filter matches, that is, one for each of the compass directions:

ray up (R k) ray northwest (R k) ray left (R k) ray southwest (R k) ray down (R k) ray southeast (R k) ray right (R k) ray northeast (R k)

Thus, `rotate45 ray up (R k)`

matches if and only if

ray (R k)matches.

`rotate45`

follows the conventions of the other transform filters in having a set value if its argument does; having a numeric value if its argument does; and accepting the `count`

parameter.

## Examples

`rotate45`

is used in Qq-rotations.cql to find games in which all
possible orientations of the
configuration of a black and white queen separated by a single piece appear.