X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=quacks-ingredients-counts.scad;h=c2a8d084f9e9d770ad9b8feeaf81db8ef3565934;hb=3c1da07f2c510b741d2a83025220c7c1b70aab44;hp=3b0e28f29270b634d2e7feaf0dfc204b602d9482;hpb=63412ee3da06f90b292673a7185c3cb32862c9d5;p=reprap-play.git diff --git a/quacks-ingredients-counts.scad b/quacks-ingredients-counts.scad index 3b0e28f..c2a8d08 100644 --- a/quacks-ingredients-counts.scad +++ b/quacks-ingredients-counts.scad @@ -3,6 +3,10 @@ // source is quacks-ingredients-counts module Base_1xFour(){ ////toplevel // Base 1xFour 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; @@ -23,6 +27,10 @@ module Base_1xFour(){ ////toplevel } 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; @@ -43,6 +51,10 @@ module Base_1xOne(){ ////toplevel } 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; @@ -63,6 +75,10 @@ module Base_1xThree(){ ////toplevel } 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; @@ -81,8 +97,36 @@ module Base_1xTwo(){ ////toplevel $nspots = 4; }; } +module Base_1xZero(){ ////toplevel +// Base 1xZero total= 1 rowsz=1 nrows=1 + union(){ + Frame($phase, token_pitch * [ 1 + 1.00, 1 + 0.50 ]); + $nspots = 0; + translate(token_pitch * [ 0.0, 0.0 ]) Token_L(); + }; + 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; + }; +} 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; @@ -104,6 +148,10 @@ module Base_2xFour(){ ////toplevel } 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; @@ -125,6 +173,10 @@ module Base_2xOne(){ ////toplevel } 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; @@ -146,6 +198,10 @@ module Base_2xThree(){ ////toplevel } 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; @@ -165,8 +221,37 @@ module Base_2xTwo(){ ////toplevel $nspots = 4; }; } +module Base_2xZero(){ ////toplevel +// Base 2xZero total= 2 rowsz=2 nrows=1 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 1 + 0.50 ]); + $nspots = 0; + 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 = 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; + }; +} 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; @@ -189,6 +274,10 @@ module Base_3xFour(){ ////toplevel } 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; @@ -211,6 +300,10 @@ module Base_3xOne(){ ////toplevel } 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; @@ -233,6 +326,10 @@ module Base_3xThree(){ ////toplevel } 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; @@ -253,8 +350,38 @@ module Base_3xTwo(){ ////toplevel $nspots = 4; }; } +module Base_3xZero(){ ////toplevel +// Base 3xZero total= 3 rowsz=2 nrows=2 + union(){ + Frame($phase, token_pitch * [ 2 + 1.00, 2 + 0.50 ]); + $nspots = 0; + 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 = 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; + }; +} 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; @@ -292,6 +419,10 @@ module Base_Black(){ ////toplevel } 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; @@ -345,6 +476,10 @@ module Base_Blue(){ ////toplevel } 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; @@ -402,6 +537,10 @@ module Base_Green(){ ////toplevel } 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; @@ -441,6 +580,10 @@ module Base_Orange(){ ////toplevel } 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; @@ -475,6 +618,10 @@ module Base_Purple(){ ////toplevel } 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; @@ -523,7 +670,11 @@ module Base_Red(){ ////toplevel }; } module Base_White(){ ////toplevel -// Base White total=32 rowsz=6 nrows=6 +// 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; @@ -547,11 +698,11 @@ module Base_White(){ ////toplevel 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, 0.5 ]) Token_L(); translate(token_pitch * [ 0.5, 1.5 ]) Token_L(); translate(token_pitch * [ 0.5, 2.5 ]) Token_L(); @@ -559,22 +710,55 @@ module Base_White(){ ////toplevel 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 * [ 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(); + 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; @@ -621,5 +805,1022 @@ module Base_Yellow(){ ////toplevel translate(token_pitch * [ 2.5, 1.0 ]) Token_L(); }; } -// Base total_count=240 total_real_count=216 +// Base total_count=252 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 * [ -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(); + 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(){ + 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_Red(){ ////toplevel +// All Red total=46 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(); + }; + union(){ + 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.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(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 3; + }; + union(){ + 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.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 All_White(){ ////toplevel +// All White total=46 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 * [ -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(){ + 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 * [ -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.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(){ + Frame($phase, token_pitch * [ 7 + 1.00, 7 + 0.50 ]); + $nspots = 3; + }; + union(){ + 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.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.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(); + }; +} +// 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(){ + 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 * [ -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(); + 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 Witches_Orange(){ ////toplevel +// Witches Orange total=12 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.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.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.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(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 2; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 3; + }; + union(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 4; + }; +} +module Witches_Orange6(){ ////toplevel +// Witches 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 Witches_Purple(){ ////toplevel +// Witches Purple total= 8 rowsz=3 nrows=3 + union(){ + 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.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.5, 1.0 ]) Token_L(); + }; + union(){ + 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.5, 1.0 ]) Token_L(); + }; + union(){ + 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(){ + Frame($phase, token_pitch * [ 4 + 1.00, 3 + 0.50 ]); + $nspots = 4; + }; +} +module Witches_Yellow(){ ////toplevel +// Witches Yellow 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(); + }; +} +// Witches total_count=154 total_real_count=134 +// Witches max_rowsz=5 max_nrows=5