Symmetry operations/Wallpaper

=Draft of section to add for Wallpaper groups= To add to Symmetry operations page, probably just before the Symmetry operations section.

To do some images

Wallpaper Group Symmetry
Designs with symmetry generated by one of the 17 Wallpaper groups can set CF::Symmetry and CF::Tile appropriately. All wallpaper group symmetries require that tiling be enabled. Most wallpaper groups have specific requirements for the symmetry of the tiling lattice, except for p1 and p2 group symmetry.

Groups with parallelogram tile: p1 and p2
Group p1 is implemented by setting the CF::Tile variable (skew is permitted), as the only elements of the symmetry group are translations.

Group p2, specified by setting the CF::Tile variable (as with p1) and setting CF::Symmetry to CF::p2. This gives the tiling a 180 degree rotation. Although it has the same symmetry name as the Frieze group p2 above, it differs from Frieze version in that the setting of the CF::Tile has definite width and height, and can be skewed.

CF::p2, centre_x, centre_y
The centre parameters in group p2 indicates the centre of the 2-fold rotation (the blue diamond). The centre parameters are optional and default to (0, 0).

Groups with arbitrary rectangular tile: pm, pg, pmm, pmg, pgg
Due to either having a reflection (mirror) or glide reflection (reflection plus translation parallel to the reflection axis) or a combination of two of these, the tile of these groups needs to be rectangular.

CF::pmg, mirror axis, centre_x, centre_y
The axis specification in groups pm, pg, and pmg indicate which axis (x or y) is the mirror axis (or glide axis for pg). The axis specification is zero for the x-axis and non-zero for the y-axis. The axis position parameter in groups pm and pg indicate the position of the mirror or glide axis. The axis position parameter is optional and defaults to 0. The centre parameters in groups pmm, pgg, and pmg indicate the point that the mirror and/or glide axes intersect. The centre parameters are optional and default to (0, 0).

Groups with a diamond tile: cm, cmm
This figure illustrates a diamond tile, which is required for cm and cmm group symmetry:



The green rhombus indicates the unit cell of the diamond tile. However, Context Free only supports tiling lattices with at least one axis coincident with the x or y axis. So either the red or blue parallelogram must be used for the tiling lattice. The most straight-forward method for specifying this skewed tiling lattice is to use the six parameter form of the transform adjustment. For a diamond tile that is 3 units wide and 2 units high you would use one of these two: in general:

CF::cmm, centre_x, centre_y
The mirror axis specification in group cm indicates which axis (x or y) is the mirror axis. The mirror axis specification is zero for the x-axis and non-zero for the y-axis. The axis position parameter in group cm indicates the position of mirror axis. The axis position parameter is optional and defaults to 0. The centre parameters in group cmm indicate the point that the mirror axes intersect. The centre parameters are optional and default to (0, 0).

Groups with a square tile: p4, p4m, p4g
As these groups have a 90&deg; centre of rotation, they require the tiling grid to be square.

CF::p4g, centre_x, centre_y
The centre parameters in groups p4, p4m, and p4g indicate the centre of the 4-fold rotation (the green squares). The centre parameters are optional and default to (0, 0).

Groups with a hexagonal tile: p3, p3m1, p31m, p6, p6m
These symmetry groups require a tile that fits on a hexagonal grid. There are two permissible hexagonal grids in Context Free: horizontal and vertical.

CF::p6m, centre_x, centre_y
The centre parameters in groups p3, p3m1, and p31m indicate the centre of the 3-fold rotation (the red triangles). The centre parameters in groups p6 and p6m indicate the centre of the 6-fold rotation. The centre parameters are optional and default to (0, 0).