POLYOMINO_MULTIHEDRAL_TILING_PRINT
Print Solutions of Polyomino Multihedral Tiling
POLYOMINO_MULTIHEDRAL_TILING_PRINT,
a MATLAB library which
is given matrices defining a region R and a set of polyominoes P,
and a vector X, computed by POLYOMINO_MULTIHEDRAL, which represent a
tiling of R by the polyominoes in P. The task is to
print out a representation of that tiling.
The problem being solved is discussed in the documentation for
POLYOMINO_MULTIHEDRAL. Briefly, a region R is to be tiled by one or
more copies of polyominoes stored in P. The solution procedure treats
as "variables" all distinct rotation, reflections, and translations of
the polyominoes that fit exactly onto some portion of R. The solution
is a binary list that indicates a selection of these variables that
tile R completely.
This function takes the solution vector of selected variables, such as:
1 0 1 0 1 0 0 1 0 0
and produces a visual map of the corresponding tiling of the region,
which might be:
1 1
8 3 3
8 5 3
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Source Code:
-
polyomino_condense.m,
cleans up a matrix that represents a polyomino by setting all nonzero
entries to 1, and removing initial and final rows and columns of zeros.
-
polyomino_embed_list.m,
for each possible embedding, lists the translation necessary to
to apply to the polyomino.
-
polyomino_embed_number.m,
reports the number of ways a polyomino can be embedded in a region.
-
polyomino_index.m,
computes an index for each nonzero polyomino entry.
-
polyomino_multihedral_matrix.m,
determines the matrix and right hand side for a polyomino multihedral
problem.
-
polyomino_multihedral_tiling_print.m,
is given matrices defining a region R and a set of polyominoes P, and a vector X,
computed by POLYOMINO_MULTIHEDRAL, which represents a tiling of R by the
polyominoes in P,
and prints out a representation of that tiling.
-
polyomino_multihedral_variants.m,
carries out reflections and rotations of all the polyominoes in a set P to
determine which transformations yield distinct variants.
-
polyomino_print.m,
prints a polyomino.
-
polyomino_transform.m,
carries out reflections and rotations of a polyomino.
-
timestamp.m,
prints the YMDHMS date as a timestamp.
Examples and Tests:
Last revised on 19 June 2018.