Generate Random Domino Tiles
Posted: Sat Jul 09, 2005 2:20 pm
Here's some code to generate random horizontal and vertical domino tiles. I wish I were saavy enough to make this draw a whole domino game with the tiles, but I'm not that far ahead yet.
Code: Select all
startshape DOMINOES
rule DOMINOES {
DOMINO{}
}
rule DOMINO{
HORIZONTAL{}
}
rule DOMINO{
VERTICAL{}
}
rule HORIZONTAL{
VERTICAL { rotate 90 }
}
rule VERTICAL{
V_OUTLINES{}
U_V_DOTS{}
L_V_DOTS{}
}
rule V_OUTLINES{
SQUARE { x 1 y 1 s 1 b 0 }
SQUARE { x 1 y 2 s 1 b 0 }
SQUARE { x 1 y 1 s .95 b 1 }
SQUARE { x 1 y 2 s .95 b 1 }
}
rule U_V_DOTS{
}
rule U_V_DOTS{
CIRCLE { x 1 y 2 size .17 }
}
rule U_V_DOTS{
CIRCLE { x .8 y 2 size .17 }
CIRCLE { x 1.2 y 2 size .17 }
}
rule U_V_DOTS{
CIRCLE { x .8 y 2.2 size .17 }
CIRCLE { x 1 y 2 size .17 }
CIRCLE { x 1.2 y 1.8 size .17 }
}
rule U_V_DOTS{
CIRCLE { x .8 y 2.2 size .17 }
CIRCLE { x 1.2 y 2.2 size .17 }
CIRCLE { x 1.2 y 1.8 size .17 }
CIRCLE { x .8 y 1.8 size .17 }
}
rule U_V_DOTS{
CIRCLE { x .8 y 2.2 size .17 }
CIRCLE { x 1.2 y 2.2 size .17 }
CIRCLE { x 1 y 2 size .17 }
CIRCLE { x 1.2 y 1.8 size .17 }
CIRCLE { x .8 y 1.8 size .17 }
}
rule U_V_DOTS{
CIRCLE { x .8 y 2.2 size .17 }
CIRCLE { x 1.2 y 2.2 size .17 }
CIRCLE { x .8 y 2 size .17 }
CIRCLE { x 1.2 y 2 size .17 }
CIRCLE { x 1.2 y 1.8 size .17 }
CIRCLE { x .8 y 1.8 size .17 }
}
rule L_V_DOTS{
}
rule L_V_DOTS{
CIRCLE { x 1 y 1 size .17 }
}
rule L_V_DOTS{
CIRCLE { x .8 y 1 size .17 }
CIRCLE { x 1.2 y 1 size .17 }
}
rule L_V_DOTS{
CIRCLE { x .8 y 1.2 size .17 }
CIRCLE { x 1 y 1 size .17 }
CIRCLE { x 1.2 y .8 size .17 }
}
rule L_V_DOTS{
CIRCLE { x .8 y 1.2 size .17 }
CIRCLE { x 1.2 y 1.2 size .17 }
CIRCLE { x 1.2 y .8 size .17 }
CIRCLE { x .8 y .8 size .17 }
}
rule L_V_DOTS{
CIRCLE { x .8 y 1.2 size .17 }
CIRCLE { x 1.2 y 1.2 size .17 }
CIRCLE { x 1 y 1 size .17 }
CIRCLE { x 1.2 y .8 size .17 }
CIRCLE { x .8 y .8 size .17 }
}
rule L_V_DOTS{
CIRCLE { x .8 y 1.2 size .17 }
CIRCLE { x 1.2 y 1.2 size .17 }
CIRCLE { x .8 y 1 size .17 }
CIRCLE { x 1.2 y 1 size .17 }
CIRCLE { x 1.2 y .8 size .17 }
CIRCLE { x .8 y .8 size .17 }
}