From c28dfc40ab7e25a17e0ed45bddbe4c0e9fbb6e0c Mon Sep 17 00:00:00 2001
From: Michael Sippel <micha@fragmental.art>
Date: Sat, 29 Mar 2025 14:20:13 +0100
Subject: [PATCH] add dice

---
 dice/letter_die.scad | 53 ++++++++++++++++++++++++++++++++++++++++++++
 dice/number_die.scad | 53 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 106 insertions(+)
 create mode 100644 dice/letter_die.scad
 create mode 100644 dice/number_die.scad

diff --git a/dice/letter_die.scad b/dice/letter_die.scad
new file mode 100644
index 0000000..0f5be40
--- /dev/null
+++ b/dice/letter_die.scad
@@ -0,0 +1,53 @@
+
+r=10;
+r2=8.5;
+
+hull() {
+    translate([-r2,-r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,-r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([-r2,r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([-r2,-r2,r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,-r2,r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,r2,r2])
+    sphere(r=2, $fn=64);
+
+    translate([-r2,r2,r2])
+    sphere(r=2, $fn=64);
+}
+
+color([1,0,0])
+{
+    rotate([0,0,0])
+    translate([0,0,r])
+    text("A", halign="center", valign="center", size=15, font="Open Sans");
+    rotate([0,180,0])
+    translate([0,0,r])
+    text("F", halign="center", valign="center", size=15, font="Open Sans");
+
+    rotate([90,0,0])
+    translate([0,0,r])
+    text("B", halign="center", valign="center", size=15, font="Open Sans");
+    rotate([-90,180,0])
+    translate([0,0,r])
+    text("E", halign="center", valign="center", size=15, font="Open Sans");
+
+    rotate([90,0,90])
+    translate([0,0,r])
+    text("C", halign="center", valign="center", size=15, font="Open Sans");
+    rotate([-90,180,90])
+    translate([0,0,r])
+    text("D", halign="center", valign="center", size=15, font="Open Sans");
+}
diff --git a/dice/number_die.scad b/dice/number_die.scad
new file mode 100644
index 0000000..8758c54
--- /dev/null
+++ b/dice/number_die.scad
@@ -0,0 +1,53 @@
+
+r=10;
+r2=8.5;
+
+hull() {
+    translate([-r2,-r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,-r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([-r2,r2,-r2])
+    sphere(r=2, $fn=64);
+    
+    translate([-r2,-r2,r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,-r2,r2])
+    sphere(r=2, $fn=64);
+    
+    translate([r2,r2,r2])
+    sphere(r=2, $fn=64);
+
+    translate([-r2,r2,r2])
+    sphere(r=2, $fn=64);
+}
+
+color([0,1,0])
+{
+    rotate([0,0,0])
+    translate([0,0,r])
+    text("1", halign="center", valign="center", size=15, font="Open Sans");
+    rotate([0,180,0])
+    translate([0,0,r])
+    text("6", halign="center", valign="center", size=15, font="Open Sans");
+
+    rotate([90,0,0])
+    translate([0,0,r])
+    text("2", halign="center", valign="center", size=15, font="Open Sans");
+    rotate([-90,180,0])
+    translate([0,0,r])
+    text("5", halign="center", valign="center", size=15, font="Open Sans");
+
+    rotate([90,0,90])
+    translate([0,0,r])
+    text("3", halign="center", valign="center", size=15, font="Open Sans");
+    rotate([-90,180,90])
+    translate([0,0,r])
+    text("4", halign="center", valign="center", size=15, font="Open Sans");
+}