1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
module lucet(handle=true, hole_r=4, slot_bottom=false, slot_top=false, h=6) {
difference() {
minkowski() {
linear_extrude(height=h-4) union() {
import("../gfx/lucet.dxf");
if (handle) {
import("../gfx/lucet-handle.dxf");
}
}
sphere(r=2);
}
if (slot_bottom) {
translate([20-h/2-0.5, 28, -3]) cube([h+1, 19, h+2]);
}
if (slot_top) {
translate([20-h/2-0.5, 47, -3]) cube([h+1, 19, h+2]);
}
if (hole_r) {
translate([20, 47, -3]) cylinder(r=hole_r, h=h+2, $fn=32);
}
}
}
|