module Black(){ ////toplevel
// total=18, rowsz=5, nrows=4
union(){
- $ndots = 1;
- translate(token_pitch * [ -2.5, -2.0 ]) Token_L();
- translate(token_pitch * [ -2.2, -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 * [ -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 * [ 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 * [ 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();
- };
- union(){
- $ndots = 2;
- };
- union(){
- $ndots = 3;
- };
- union(){
- $ndots = 4;
+ Frame($phase, token_pitch * [ 5 + 0.5, 4 ]);
+ $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 + 0.5, 4 ]);
+ $nspots = 2;
+ };
+ union(){
+ Frame($phase, token_pitch * [ 5 + 0.5, 4 ]);
+ $nspots = 3;
+ };
+ union(){
+ Frame($phase, token_pitch * [ 5 + 0.5, 4 ]);
+ $nspots = 4;
};
}
module Blue(){ ////toplevel
// total=34, rowsz=6, nrows=6
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();
- 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();
- };
- 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();
- 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();
- };
- union(){
- $ndots = 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();
- 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();
+ Frame($phase, token_pitch * [ 6 + 0.5, 6 ]);
+ $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 + 0.5, 6 ]);
+ $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 + 0.5, 6 ]);
+ $nspots = 3;
+ };
+ union(){
+ Frame($phase, token_pitch * [ 6 + 0.5, 6 ]);
+ $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 Green(){ ////toplevel
// total=38, rowsz=7, nrows=6
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();
- 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 * [ -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();
- };
- union(){
- $ndots = 2;
- 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 * [ 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();
- };
- union(){
- $ndots = 3;
- };
- union(){
- $ndots = 4;
- translate(token_pitch * [ 0.7, -2.0 ]) Token_L();
- translate(token_pitch * [ 0.8, -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 * [ 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();
+ Frame($phase, token_pitch * [ 7 + 0.5, 6 ]);
+ $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();
};
-}
-module Orange(){ ////toplevel
-// total=20, rowsz=5, nrows=4
union(){
- $ndots = 1;
- translate(token_pitch * [ -2.5, -2.0 ]) Token_L();
- translate(token_pitch * [ -2.2, -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 * [ -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 * [ 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 * [ 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 * [ 2.0, 0.0 ]) Token_L();
- translate(token_pitch * [ 2.2, 1.0 ]) Token_L();
+ Frame($phase, token_pitch * [ 7 + 0.5, 6 ]);
+ $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(){
- $ndots = 2;
+ Frame($phase, token_pitch * [ 7 + 0.5, 6 ]);
+ $nspots = 3;
};
union(){
- $ndots = 3;
+ Frame($phase, token_pitch * [ 7 + 0.5, 6 ]);
+ $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 Orange(){ ////toplevel
+// total=20, rowsz=5, nrows=4
union(){
- $ndots = 4;
+ Frame($phase, token_pitch * [ 5 + 0.5, 4 ]);
+ $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 + 0.5, 4 ]);
+ $nspots = 2;
+ };
+ union(){
+ Frame($phase, token_pitch * [ 5 + 0.5, 4 ]);
+ $nspots = 3;
+ };
+ union(){
+ Frame($phase, token_pitch * [ 5 + 0.5, 4 ]);
+ $nspots = 4;
};
}
module Purple(){ ////toplevel
// total=15, rowsz=4, nrows=4
union(){
- $ndots = 1;
- translate(token_pitch * [ -2.0, -2.0 ]) Token_L();
- translate(token_pitch * [ -1.8, -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 * [ -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, 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 * [ 1.5, 0.0 ]) Token_L();
+ Frame($phase, token_pitch * [ 4 + 0.5, 4 ]);
+ $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(){
- $ndots = 2;
+ Frame($phase, token_pitch * [ 4 + 0.5, 4 ]);
+ $nspots = 2;
};
union(){
- $ndots = 3;
+ Frame($phase, token_pitch * [ 4 + 0.5, 4 ]);
+ $nspots = 3;
};
union(){
- $ndots = 4;
+ Frame($phase, token_pitch * [ 4 + 0.5, 4 ]);
+ $nspots = 4;
};
}
module Red(){ ////toplevel
// total=30, rowsz=6, nrows=5
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 * [ 6 + 0.5, 5 ]);
+ $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();
};
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 * [ 6 + 0.5, 5 ]);
+ $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(){
- $ndots = 3;
+ Frame($phase, token_pitch * [ 6 + 0.5, 5 ]);
+ $nspots = 3;
};
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 * [ 6 + 0.5, 5 ]);
+ $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 White(){ ////toplevel
// total=32, rowsz=6, nrows=6
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();
- 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 * [ -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();
- };
- union(){
- $ndots = 2;
- 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 * [ 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();
- };
- 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();
- };
- union(){
- $ndots = 4;
+ Frame($phase, token_pitch * [ 6 + 0.5, 6 ]);
+ $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();
+ };
+ union(){
+ Frame($phase, token_pitch * [ 6 + 0.5, 6 ]);
+ $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 * [ 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();
+ };
+ union(){
+ Frame($phase, token_pitch * [ 6 + 0.5, 6 ]);
+ $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();
+ };
+ union(){
+ Frame($phase, token_pitch * [ 6 + 0.5, 6 ]);
+ $nspots = 4;
};
}
module Yellow(){ ////toplevel
// total=29, rowsz=6, nrows=5
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 * [ 6 + 0.5, 5 ]);
+ $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(){
- $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 * [ 6 + 0.5, 5 ]);
+ $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(){
- $ndots = 3;
+ Frame($phase, token_pitch * [ 6 + 0.5, 5 ]);
+ $nspots = 3;
};
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 * [ 6 + 0.5, 5 ]);
+ $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();
};
}