uilleann

3d printable Uilleann bagpipes
git clone https://git.woozle.org/neale/uilleann.git

uilleann / pickett-d
Neale Pickett  ·  2025-12-30

sigil.scad

 1// A simple re-implementation from mcad
 2module cylinder_tube(height, radius, wall) {
 3  difference() {
 4    cylinder(h=height, r=radius);
 5    cylinder(h=height, r=radius-wall);
 6  }
 7}
 8
 9module sigil(d, top_str="", bot_str="") {
10  // Sigil
11  translate([0, 0, 4]) intersection() {
12    cylinder_tube(50, d/2+0.5, 1);
13    union() {
14      rotate([90, 0, -90]) {
15        linear_extrude(height=d, convexity=4) {
16          translate([0, 8]) import("ruby.svg", center=true);
17          // XXX: when this is in openscad prod, add center to import and remove translate
18        }
19      }
20      rotate([90, 0, -90]) {
21        linear_extrude(height=d, convexity=10) {
22          translate([0, 13]) text(top_str, size=2, halign="center", valign="bottom");
23          translate([0, 1]) text(bot_str, size=2, halign="center", valign="bottom");
24        }
25      }
26    }
27  }
28}