|The nine block is a common design pattern among quilters. It's construction
methods and primitive building shapes are simple, yet produce millions
of interesting variations.
Individual blocks are composed of
shapes in a 3x3 grid,
|from a set of 16 primitive shapes.
Blocks are radially symmetric, so the shape and rotation for only
three grid cells need be specified. These three cells are the center,
the edge, and the corner. All other cells can be derived from these
To ensure the generative process is complete, and to provide a method
of unique identification for each nine block, they are represented
by a 14 bit binary number.
|The 2 bit rotation values are converted to degrees by a multiplier
of 90, so
that a rotation value of 01 would be 90, 10 , would be 180, etc...
The 4 bit shape value directly determines the shape graphic from the
set. Shape 0000 is ,
and shape 1110 is .
Enumerating through each number between 0 and 215 (16384), we generate
all possible combinations of this system.
Blocks containing rotationally invariant shapes (shapes that appear
the same despite rotation) are eliminated so as not to allow duplicates.
Thus, the total number of blocks can be calculated by subtracting
all eliminated blocks (5568) from the total blocks possible (16384).