1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
module stick_shuttle(l, r=8, h=4) {
difference() {
intersection() {
rotate([0, 90, 0]) hull() {
cylinder(r1=0.5, r2=r, h=r*2);
translate([0, 0, l - r * 2]) cylinder(r1=r, r2=0.5, h=r*2);
}
translate([-1, -r-1, -h/2]) cube([l+2, (r+1) * 2, h]);
}
translate([r*2, 0, 0]) cylinder(r=r/2.5, h=h*2, center=true, $fn=10);
translate([l - r*2, 0, 0]) cylinder(r=r/2.5, h=h*2, center=true, $fn=10);
translate([0, -r/4, -h]) cube([r*2, r/2, h*2]);
translate([l-r*2, -r/4, -h]) cube([r*2, r/2, h*2]);
}
}
|