X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=quacks-ingredients-counts.scad;h=e7699be350680d02f8e659d9ee49e8dae05f2ae2;hb=2132efba59634024b51ec9c19eb40a490081cfc9;hp=97503e3c002de0d9f282b7e1dc07f947b20b113e;hpb=eac753be7c665e8459f008062c7238ff04c1f57c;p=reprap-play.git diff --git a/quacks-ingredients-counts.scad b/quacks-ingredients-counts.scad index 97503e3..e7699be 100644 --- a/quacks-ingredients-counts.scad +++ b/quacks-ingredients-counts.scad @@ -1,339 +1,1751 @@ -// autogenerated - do not edit -// update script is quacks-ingredients-updates-levels -// source is quacks-ingredients-counts -module Black(){ ////toplevel -// total=18, rowsz=5, nrows=4 +// autogenerated - do not edit +// update script is quacks-ingredients-updates-levels +// source is quacks-ingredients-counts +module Base_1xFour(){ ////toplevel +// Base 1xFour total= 1 rowsz=1 nrows=1 union(){ - $ndots = 1; + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + }; +} +module Base_1xOne(){ ////toplevel +// Base 1xOne total= 1 rowsz=1 nrows=1 + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 4; + }; +} +module Base_1xThree(){ ////toplevel +// Base 1xThree total= 1 rowsz=1 nrows=1 + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 4; + }; +} +module Base_1xTwo(){ ////toplevel +// Base 1xTwo total= 1 rowsz=1 nrows=1 + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 4; + }; +} +module Base_2xFour(){ ////toplevel +// Base 2xFour total= 2 rowsz=2 nrows=1 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + }; +} +module Base_2xOne(){ ////toplevel +// Base 2xOne total= 2 rowsz=2 nrows=1 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 4; + }; +} +module Base_2xThree(){ ////toplevel +// Base 2xThree total= 2 rowsz=2 nrows=1 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 4; + }; +} +module Base_2xTwo(){ ////toplevel +// Base 2xTwo total= 2 rowsz=2 nrows=1 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 4; + }; +} +module Base_3xFour(){ ////toplevel +// Base 3xFour total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + }; +} +module Base_3xOne(){ ////toplevel +// Base 3xOne total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 4; + }; +} +module Base_3xThree(){ ////toplevel +// Base 3xThree total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 4; + }; +} +module Base_3xTwo(){ ////toplevel +// Base 3xTwo total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 4; + }; +} +module Base_Black(){ ////toplevel +// Base Black total=18 rowsz=5 nrows=4 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 4; + }; +} +module Base_Blue(){ ////toplevel +// Base Blue total=34 rowsz=6 nrows=6 + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 0.5 ]) Token_L(); + }; +} +module Base_Green(){ ////toplevel +// Base Green total=38 rowsz=7 nrows=6 + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 6 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 6 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -3.0, -2.5 ]) Token_L(); + translate(token_pitch * [ -3.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -3.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -3.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -3.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -3.0, 2.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -2.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 6 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 2.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 6 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 6 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 2.5 ]) Token_L(); + translate(token_pitch * [ 3.0, -2.5 ]) Token_L(); + translate(token_pitch * [ 3.0, -1.5 ]) Token_L(); + }; +} +module Base_Orange(){ ////toplevel +// Base Orange total=20 rowsz=5 nrows=4 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 4; + }; +} +module Base_Purple(){ ////toplevel +// Base Purple total=15 rowsz=4 nrows=4 + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 4; + }; +} +module Base_Red(){ ////toplevel +// Base Red total=30 rowsz=6 nrows=5 + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 1; translate(token_pitch * [ -2.5, -2.0 ]) Token_L(); - translate(token_pitch * [ -2.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 2.0 ]) Token_L(); + }; +} +module Base_White(){ ////toplevel +// Base White total=35 rowsz=6 nrows=6 + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ 2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 4; + }; +} +module Base_WhiteSpare(){ ////toplevel +// Base WhiteSpare total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 4; + }; +} +module Base_Yellow(){ ////toplevel +// Base Yellow total=29 rowsz=6 nrows=5 + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 1.0 ]) Token_L(); + }; +} +// Base total_count=246 total_real_count=219 +// Base max_rowsz=7 max_nrows=6 +module All_Black(){ ////toplevel +// All Black total=26 rowsz=6 nrows=5 + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 5 + 0.50 ]); + $nspots = 4; + }; +} +module All_Blue(){ ////toplevel +// All Blue total=52 rowsz=8 nrows=7 + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 7 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 7 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -3.5, -3.0 ]) Token_L(); + translate(token_pitch * [ -3.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -3.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -3.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -3.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -3.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -3.5, 3.0 ]) Token_L(); + translate(token_pitch * [ -2.5, -3.0 ]) Token_L(); + translate(token_pitch * [ -2.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -2.5, 3.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -3.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 3.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -3.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 7 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 3.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -3.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 3.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -3.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -2.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 7 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 7 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 3.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -3.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.5, 3.0 ]) Token_L(); + translate(token_pitch * [ 3.5, -3.0 ]) Token_L(); + translate(token_pitch * [ 3.5, -2.0 ]) Token_L(); + translate(token_pitch * [ 3.5, -1.0 ]) Token_L(); + }; +} +module All_Green(){ ////toplevel +// All Green total=58 rowsz=8 nrows=8 + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 8 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 8 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -3.5, -3.5 ]) Token_L(); + translate(token_pitch * [ -3.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -3.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -3.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -3.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -3.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -3.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -3.5, 3.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -3.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 3.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -3.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 3.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -3.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 8 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 3.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -3.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 3.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 8 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 8 + 1.00, 8 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.5, -3.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 3.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -3.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, 3.5 ]) Token_L(); + translate(token_pitch * [ 3.5, -3.5 ]) Token_L(); + translate(token_pitch * [ 3.5, -2.5 ]) Token_L(); + }; +} +module All_Loco(){ ////toplevel +// All Loco total=25 rowsz=5 nrows=5 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 0; + translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.0 ]) Token_L(); translate(token_pitch * [ -2.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -1.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -1.5, -2.0 ]) Token_L(); - translate(token_pitch * [ -1.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -0.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -0.5, -2.0 ]) Token_L(); - translate(token_pitch * [ -0.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 0.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 0.5, -2.0 ]) Token_L(); - translate(token_pitch * [ 0.8, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 1.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 1.5, -2.0 ]) Token_L(); - translate(token_pitch * [ 1.8, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 2.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 4; + }; +} +module All_Orange(){ ////toplevel +// All Orange total=32 rowsz=6 nrows=6 + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -2.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -2.5 ]) Token_L(); + translate(token_pitch * [ 2.5, -1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 6 + 1.00, 6 + 0.50 ]); + $nspots = 4; + }; +} +module All_Orange6(){ ////toplevel +// All Orange6 total=20 rowsz=5 nrows=4 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 0; + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 1; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 4; + }; +} +module All_Purple(){ ////toplevel +// All Purple total=23 rowsz=5 nrows=5 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.0 ]) Token_L(); }; union(){ - $ndots = 2; + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 2; }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 3; }; union(){ - $ndots = 4; + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 4; }; } -module Blue(){ ////toplevel -// total=34, rowsz=6, nrows=6 +module All_Red(){ ////toplevel +// All Red total=46 rowsz=7 nrows=7 + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 0; + }; union(){ - $ndots = 1; + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 1; translate(token_pitch * [ -3.0, -3.0 ]) Token_L(); - translate(token_pitch * [ -2.8, -2.0 ]) Token_L(); - translate(token_pitch * [ -2.7, -1.0 ]) Token_L(); - translate(token_pitch * [ -2.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -2.3, 1.0 ]) Token_L(); - translate(token_pitch * [ -2.2, 2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 3.0 ]) Token_L(); translate(token_pitch * [ -2.0, -3.0 ]) Token_L(); - translate(token_pitch * [ -1.8, -2.0 ]) Token_L(); - translate(token_pitch * [ -1.7, -1.0 ]) Token_L(); - translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -1.3, 1.0 ]) Token_L(); - translate(token_pitch * [ -1.2, 2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 3.0 ]) Token_L(); translate(token_pitch * [ -1.0, -3.0 ]) Token_L(); - translate(token_pitch * [ -0.8, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); }; union(){ - $ndots = 2; - translate(token_pitch * [ -0.7, -1.0 ]) Token_L(); - translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -0.3, 1.0 ]) Token_L(); - translate(token_pitch * [ -0.2, 2.0 ]) Token_L(); + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 3.0 ]) Token_L(); translate(token_pitch * [ 0.0, -3.0 ]) Token_L(); - translate(token_pitch * [ 0.2, -2.0 ]) Token_L(); - translate(token_pitch * [ 0.3, -1.0 ]) Token_L(); - translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); - translate(token_pitch * [ 0.7, 1.0 ]) Token_L(); - translate(token_pitch * [ 0.8, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 3; }; union(){ - $ndots = 4; - translate(token_pitch * [ 1.0, -3.0 ]) Token_L(); - translate(token_pitch * [ 1.2, -2.0 ]) Token_L(); - translate(token_pitch * [ 1.3, -1.0 ]) Token_L(); - translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); - translate(token_pitch * [ 1.7, 1.0 ]) Token_L(); - translate(token_pitch * [ 1.8, 2.0 ]) Token_L(); + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 3.0 ]) Token_L(); translate(token_pitch * [ 2.0, -3.0 ]) Token_L(); - translate(token_pitch * [ 2.2, -2.0 ]) Token_L(); - translate(token_pitch * [ 2.3, -1.0 ]) Token_L(); - translate(token_pitch * [ 2.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 3.0, 0.0 ]) Token_L(); }; } -module Green(){ ////toplevel -// total=38, rowsz=7, nrows=6 +module All_White(){ ////toplevel +// All White total=46 rowsz=7 nrows=7 union(){ - $ndots = 1; - translate(token_pitch * [ -3.5, -3.0 ]) Token_L(); - translate(token_pitch * [ -3.3, -2.0 ]) Token_L(); - translate(token_pitch * [ -3.2, -1.0 ]) Token_L(); + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -3.0, -3.0 ]) Token_L(); + translate(token_pitch * [ -3.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, -1.0 ]) Token_L(); translate(token_pitch * [ -3.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -2.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -2.7, 2.0 ]) Token_L(); - translate(token_pitch * [ -2.5, -3.0 ]) Token_L(); - translate(token_pitch * [ -2.3, -2.0 ]) Token_L(); - translate(token_pitch * [ -2.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 3.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -3.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.0 ]) Token_L(); translate(token_pitch * [ -2.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -1.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -1.7, 2.0 ]) Token_L(); - translate(token_pitch * [ -1.5, -3.0 ]) Token_L(); - translate(token_pitch * [ -1.3, -2.0 ]) Token_L(); - translate(token_pitch * [ -1.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 3.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -3.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ 0.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ 2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 3.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 4; + }; +} +module All_WhiteSpare(){ ////toplevel +// All WhiteSpare total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); }; union(){ - $ndots = 2; + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 4; + }; +} +module All_Yellow(){ ////toplevel +// All Yellow total=45 rowsz=7 nrows=7 + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -3.0, -3.0 ]) Token_L(); + translate(token_pitch * [ -3.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -3.0, 3.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -3.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 3.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -3.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -0.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -0.7, 2.0 ]) Token_L(); - translate(token_pitch * [ -0.5, -3.0 ]) Token_L(); - translate(token_pitch * [ -0.3, -2.0 ]) Token_L(); - translate(token_pitch * [ -0.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 0.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 0.3, 2.0 ]) Token_L(); - translate(token_pitch * [ 0.5, -3.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 3; }; union(){ - $ndots = 4; - translate(token_pitch * [ 0.7, -2.0 ]) Token_L(); - translate(token_pitch * [ 0.8, -1.0 ]) Token_L(); + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 1.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 1.3, 2.0 ]) Token_L(); - translate(token_pitch * [ 1.5, -3.0 ]) Token_L(); - translate(token_pitch * [ 1.7, -2.0 ]) Token_L(); - translate(token_pitch * [ 1.8, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.0 ]) Token_L(); translate(token_pitch * [ 2.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 2.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 2.3, 2.0 ]) Token_L(); - translate(token_pitch * [ 2.5, -3.0 ]) Token_L(); - translate(token_pitch * [ 2.7, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 3.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -3.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 3.0, -1.0 ]) Token_L(); }; } -module Orange(){ ////toplevel -// total=20, rowsz=5, nrows=4 +// All total_count=376 total_real_count=353 +// All max_rowsz=8 max_nrows=8 +module Witches_Black(){ ////toplevel +// Witches Black total= 8 rowsz=3 nrows=3 union(){ - $ndots = 1; - translate(token_pitch * [ -2.5, -2.0 ]) Token_L(); - translate(token_pitch * [ -2.2, -1.0 ]) Token_L(); + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 4; + }; +} +module Witches_Blue(){ ////toplevel +// Witches Blue total=18 rowsz=5 nrows=4 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + }; +} +module Witches_Green(){ ////toplevel +// Witches Green total=20 rowsz=5 nrows=4 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.5 ]) Token_L(); + }; +} +module Witches_Loco(){ ////toplevel +// Witches Loco total=25 rowsz=5 nrows=5 + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 0; + translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -2.0, -1.0 ]) Token_L(); translate(token_pitch * [ -2.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -1.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -1.5, -2.0 ]) Token_L(); - translate(token_pitch * [ -1.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -2.0, 2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); - translate(token_pitch * [ -0.8, 1.0 ]) Token_L(); - translate(token_pitch * [ -0.5, -2.0 ]) Token_L(); - translate(token_pitch * [ -0.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 0.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 0.5, -2.0 ]) Token_L(); - translate(token_pitch * [ 0.8, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 1.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 1.5, -2.0 ]) Token_L(); - translate(token_pitch * [ 1.8, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -2.0 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.0 ]) Token_L(); translate(token_pitch * [ 2.0, 0.0 ]) Token_L(); - translate(token_pitch * [ 2.2, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 2.0, 2.0 ]) Token_L(); }; union(){ - $ndots = 2; + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 1; }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 2; }; union(){ - $ndots = 4; + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 5 + 0.50 ]); + $nspots = 4; }; } -module Purple(){ ////toplevel -// total=15, rowsz=4, nrows=4 +module Witches_Orange(){ ////toplevel +// Witches Orange total=12 rowsz=4 nrows=3 union(){ - $ndots = 1; - translate(token_pitch * [ -2.0, -2.0 ]) Token_L(); - translate(token_pitch * [ -1.8, -1.0 ]) Token_L(); + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.5, -1.0 ]) Token_L(); translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -1.2, 1.0 ]) Token_L(); - translate(token_pitch * [ -1.0, -2.0 ]) Token_L(); - translate(token_pitch * [ -0.8, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.0 ]) Token_L(); translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -0.2, 1.0 ]) Token_L(); - translate(token_pitch * [ 0.0, -2.0 ]) Token_L(); - translate(token_pitch * [ 0.2, -1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.0 ]) Token_L(); translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); - translate(token_pitch * [ 0.8, 1.0 ]) Token_L(); - translate(token_pitch * [ 1.0, -2.0 ]) Token_L(); - translate(token_pitch * [ 1.2, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.0 ]) Token_L(); translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.0 ]) Token_L(); }; union(){ - $ndots = 2; + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 2; }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 3; }; union(){ - $ndots = 4; + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 4; }; } -module Red(){ ////toplevel -// total=30, rowsz=6, nrows=5 +module Witches_Orange6(){ ////toplevel +// Witches Orange6 total=20 rowsz=5 nrows=4 union(){ - $ndots = 1; - translate(token_pitch * [ -3.0, -2.5 ]) Token_L(); - translate(token_pitch * [ -2.8, -1.5 ]) Token_L(); - translate(token_pitch * [ -2.6, -0.5 ]) Token_L(); - translate(token_pitch * [ -2.4, 0.5 ]) Token_L(); - translate(token_pitch * [ -2.2, 1.5 ]) Token_L(); - translate(token_pitch * [ -2.0, -2.5 ]) Token_L(); - translate(token_pitch * [ -1.8, -1.5 ]) Token_L(); - translate(token_pitch * [ -1.6, -0.5 ]) Token_L(); - translate(token_pitch * [ -1.4, 0.5 ]) Token_L(); - translate(token_pitch * [ -1.2, 1.5 ]) Token_L(); - translate(token_pitch * [ -1.0, -2.5 ]) Token_L(); - translate(token_pitch * [ -0.8, -1.5 ]) Token_L(); + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 0; + translate(token_pitch * [ -2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -2.0, 1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.0, 1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -1.5 ]) Token_L(); + translate(token_pitch * [ 2.0, -0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 0.5 ]) Token_L(); + translate(token_pitch * [ 2.0, 1.5 ]) Token_L(); }; union(){ - $ndots = 2; - translate(token_pitch * [ -0.6, -0.5 ]) Token_L(); - translate(token_pitch * [ -0.4, 0.5 ]) Token_L(); - translate(token_pitch * [ -0.2, 1.5 ]) Token_L(); - translate(token_pitch * [ 0.0, -2.5 ]) Token_L(); - translate(token_pitch * [ 0.2, -1.5 ]) Token_L(); - translate(token_pitch * [ 0.4, -0.5 ]) Token_L(); - translate(token_pitch * [ 0.6, 0.5 ]) Token_L(); - translate(token_pitch * [ 0.8, 1.5 ]) Token_L(); + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 1; }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 2; }; union(){ - $ndots = 4; - translate(token_pitch * [ 1.0, -2.5 ]) Token_L(); - translate(token_pitch * [ 1.2, -1.5 ]) Token_L(); - translate(token_pitch * [ 1.4, -0.5 ]) Token_L(); - translate(token_pitch * [ 1.6, 0.5 ]) Token_L(); - translate(token_pitch * [ 1.8, 1.5 ]) Token_L(); - translate(token_pitch * [ 2.0, -2.5 ]) Token_L(); - translate(token_pitch * [ 2.2, -1.5 ]) Token_L(); - translate(token_pitch * [ 2.4, -0.5 ]) Token_L(); - translate(token_pitch * [ 2.6, 0.5 ]) Token_L(); - translate(token_pitch * [ 2.8, 1.5 ]) Token_L(); + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 5 + 1.00, 4 + 0.50 ]); + $nspots = 4; }; } -module White(){ ////toplevel -// total=32, rowsz=6, nrows=6 +module Witches_Purple(){ ////toplevel +// Witches Purple total= 8 rowsz=3 nrows=3 union(){ - $ndots = 1; - translate(token_pitch * [ -3.0, -3.0 ]) Token_L(); - translate(token_pitch * [ -2.8, -2.0 ]) Token_L(); - translate(token_pitch * [ -2.7, -1.0 ]) Token_L(); - translate(token_pitch * [ -2.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -2.3, 1.0 ]) Token_L(); - translate(token_pitch * [ -2.2, 2.0 ]) Token_L(); - translate(token_pitch * [ -2.0, -3.0 ]) Token_L(); - translate(token_pitch * [ -1.8, -2.0 ]) Token_L(); - translate(token_pitch * [ -1.7, -1.0 ]) Token_L(); + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 0.0 ]) Token_L(); + translate(token_pitch * [ -1.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.0, 1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.0, 0.0 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 3 + 1.00, 3 + 0.50 ]); + $nspots = 4; + }; +} +module Witches_Red(){ ////toplevel +// Witches Red total=16 rowsz=4 nrows=4 + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.5 ]) Token_L(); + }; +} +module Witches_White(){ ////toplevel +// Witches White total=11 rowsz=4 nrows=3 + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 0; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.5, -1.0 ]) Token_L(); translate(token_pitch * [ -1.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -1.3, 1.0 ]) Token_L(); - translate(token_pitch * [ -1.2, 2.0 ]) Token_L(); - translate(token_pitch * [ -1.0, -3.0 ]) Token_L(); - translate(token_pitch * [ -0.8, -2.0 ]) Token_L(); - translate(token_pitch * [ -0.7, -1.0 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.0 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.0 ]) Token_L(); translate(token_pitch * [ -0.5, 0.0 ]) Token_L(); - translate(token_pitch * [ -0.3, 1.0 ]) Token_L(); - translate(token_pitch * [ -0.2, 2.0 ]) Token_L(); - translate(token_pitch * [ 0.0, -3.0 ]) Token_L(); - translate(token_pitch * [ 0.2, -2.0 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.0 ]) Token_L(); }; union(){ - $ndots = 2; - translate(token_pitch * [ 0.3, -1.0 ]) Token_L(); + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ 0.5, -1.0 ]) Token_L(); translate(token_pitch * [ 0.5, 0.0 ]) Token_L(); - translate(token_pitch * [ 0.7, 1.0 ]) Token_L(); - translate(token_pitch * [ 0.8, 2.0 ]) Token_L(); - translate(token_pitch * [ 1.0, -3.0 ]) Token_L(); - translate(token_pitch * [ 1.2, -2.0 ]) Token_L(); - translate(token_pitch * [ 1.3, -1.0 ]) Token_L(); - translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); + translate(token_pitch * [ 0.5, 1.0 ]) Token_L(); }; union(){ - $ndots = 3; - translate(token_pitch * [ 1.7, 1.0 ]) Token_L(); - translate(token_pitch * [ 1.8, 2.0 ]) Token_L(); - translate(token_pitch * [ 2.0, -3.0 ]) Token_L(); - translate(token_pitch * [ 2.2, -2.0 ]) Token_L(); + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 3; + translate(token_pitch * [ 1.5, -1.0 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.0 ]) Token_L(); }; union(){ - $ndots = 4; + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 4; }; } -module Yellow(){ ////toplevel -// total=29, rowsz=6, nrows=5 +module Witches_Yellow(){ ////toplevel +// Witches Yellow total=16 rowsz=4 nrows=4 union(){ - $ndots = 1; - translate(token_pitch * [ -3.0, -2.5 ]) Token_L(); - translate(token_pitch * [ -2.8, -1.5 ]) Token_L(); - translate(token_pitch * [ -2.6, -0.5 ]) Token_L(); - translate(token_pitch * [ -2.4, 0.5 ]) Token_L(); - translate(token_pitch * [ -2.2, 1.5 ]) Token_L(); - translate(token_pitch * [ -2.0, -2.5 ]) Token_L(); - translate(token_pitch * [ -1.8, -1.5 ]) Token_L(); - translate(token_pitch * [ -1.6, -0.5 ]) Token_L(); - translate(token_pitch * [ -1.4, 0.5 ]) Token_L(); - translate(token_pitch * [ -1.2, 1.5 ]) Token_L(); - translate(token_pitch * [ -1.0, -2.5 ]) Token_L(); - translate(token_pitch * [ -0.8, -1.5 ]) Token_L(); - translate(token_pitch * [ -0.6, -0.5 ]) Token_L(); + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 0; }; union(){ - $ndots = 2; - translate(token_pitch * [ -0.4, 0.5 ]) Token_L(); - translate(token_pitch * [ -0.2, 1.5 ]) Token_L(); - translate(token_pitch * [ 0.0, -2.5 ]) Token_L(); - translate(token_pitch * [ 0.2, -1.5 ]) Token_L(); - translate(token_pitch * [ 0.4, -0.5 ]) Token_L(); - translate(token_pitch * [ 0.6, 0.5 ]) Token_L(); + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 1; + translate(token_pitch * [ -1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -1.5, 1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ -0.5, -0.5 ]) Token_L(); }; union(){ - $ndots = 3; + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 2; + translate(token_pitch * [ -0.5, 0.5 ]) Token_L(); + translate(token_pitch * [ -0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 0.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 0.5, 0.5 ]) Token_L(); }; union(){ - $ndots = 4; - translate(token_pitch * [ 0.8, 1.5 ]) Token_L(); - translate(token_pitch * [ 1.0, -2.5 ]) Token_L(); - translate(token_pitch * [ 1.2, -1.5 ]) Token_L(); - translate(token_pitch * [ 1.4, -0.5 ]) Token_L(); - translate(token_pitch * [ 1.6, 0.5 ]) Token_L(); - translate(token_pitch * [ 1.8, 1.5 ]) Token_L(); - translate(token_pitch * [ 2.0, -2.5 ]) Token_L(); - translate(token_pitch * [ 2.2, -1.5 ]) Token_L(); - translate(token_pitch * [ 2.4, -0.5 ]) Token_L(); - translate(token_pitch * [ 2.6, 0.5 ]) Token_L(); + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 4 + 0.50 ]); + $nspots = 4; + translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -1.5 ]) Token_L(); + translate(token_pitch * [ 1.5, -0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 0.5 ]) Token_L(); + translate(token_pitch * [ 1.5, 1.5 ]) Token_L(); }; } +// Witches total_count=154 total_real_count=134 +// Witches max_rowsz=5 max_nrows=5