summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile4
-rw-r--r--src/piecepack.scad20
-rw-r--r--src/suite_die.scad5
3 files changed, 28 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 5a6b4cf..09ba199 100644
--- a/Makefile
+++ b/Makefile
@@ -28,6 +28,8 @@ dice:
openscad -o ${DESTDIR}/die-$$SUITE.stl \
-D suite=\"$$SUITE\" src/die.scad; \
done
+ openscad -o ${DESTDIR}/suite_die.stl \
+ -D suite='["suns","moons","crowns","arms"]' src/suite_die.scad
pawns:
mkdir -p ${DESTDIR}
@@ -50,7 +52,7 @@ gcode: tiles coins dice saucers
for T in ${DESTDIR}/coin*.stl ${DESTDIR}/saucer*.stl; do \
${SLIC3R} --load ${CONFDIR}/coins.ini $$T; \
done
- for T in ${DESTDIR}/die*.stl; do \
+ for T in ${DESTDIR}/die*.stl ${DESTDIR}/suite_die*.stl; do \
${SLIC3R} --load ${CONFDIR}/dice.ini $$T; \
done
diff --git a/src/piecepack.scad b/src/piecepack.scad
index 70da750..ef8806b 100644
--- a/src/piecepack.scad
+++ b/src/piecepack.scad
@@ -55,6 +55,26 @@ module die(suite) {
}
}
+module suite_die(suites) {
+ difference() {
+ cube(12);
+ translate([0,0,11]) linear_extrude(height=1.5) scale(0.24)
+ import("../graphics/ace.dxf");
+ translate([1,0,0]) rotate([0,-90,0])
+ linear_extrude(height=1.5) scale(0.24)
+ import(str("../graphics/",suites[0],".dxf"));
+ translate([11,0,12]) rotate([0,90,0])
+ linear_extrude(height=1.5) scale(0.24)
+ import(str("../graphics/",suites[1],".dxf"));
+ translate([0,1,0]) rotate([90,0,0])
+ linear_extrude(height=1.5) scale(0.24)
+ import(str("../graphics/",suites[2],".dxf"));
+ translate([0,11,12]) rotate([-90,0,0])
+ linear_extrude(height=1.5) scale(0.24)
+ import(str("../graphics/",suites[3],".dxf"));
+ }
+}
+
module pawn(suite) {
difference() {
cylinder(r=8, h=22);
diff --git a/src/suite_die.scad b/src/suite_die.scad
new file mode 100644
index 0000000..272875c
--- /dev/null
+++ b/src/suite_die.scad
@@ -0,0 +1,5 @@
+use <piecepack.scad>;
+
+suites=["suns","moons","crowns","arms"];
+
+suite_die(suites);