123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
-
-
-
-
- $fn = 25;
-
-
-
-
-
- module ellipse(w, l, d) {
- cube([d, l - w, w]);
-
- translate([0, 0, w / 2])
- rotate([0, 90, 0])
- cylinder(d = w, h = d);
-
- translate([0, l - w, w / 2])
- rotate([0, 90, 0])
- cylinder(d = w, h = d);
- }
-
-
-
-
- translate([0, 0, 8])
- cube([30, 2, 10]);
-
-
- translate([0, 0, 8])
- cube([1, 3, 10]);
-
-
- translate([26, 0, 0])
- cube([2, 2, 8]);
-
-
- difference() {
- translate([0, 30.5, 0])
- cube([30, 2, 18]);
-
- translate([22, 28, 5])
- rotate([0, 0, 90])
- ellipse(7, 20, 8);
- }
-
-
- translate([0, 29.5, 0])
- cube([1, 3, 18]);
-
-
- difference() {
- translate([28, 0, 0])
- cube([2, 32, 18]);
-
- translate([25, 10, 6])
- ellipse(7, 20, 8);
- }
-
- difference() {
-
- translate([0, 0, -5])
- cube([30, 32.5, 5]);
-
-
- rotate([0, -10, 0])
- translate([-2, -1, -11])
- cube([34, 34, 6]);
-
-
- rotate([0, -10, 0])
- translate([14.5, 16, -7])
- cylinder(d = 23, h = 10);
-
-
- for (i = [1 : 2]) {
- for (j = [1 : 2]) {
- rotate([0, -10, 0])
- translate([14.5, 16, -7])
- translate([(((i % 2) == 0) ? 10 : -10),
- (((j % 2) == 0) ? 10 : -10), 0])
- cylinder(d = 3, h = 10);
- }
- }
-
-
- translate([8, 33, -1.8])
- rotate([90, 0, 0])
- cylinder(d = 2, h = 34);
-
-
- translate([12, 33, -1.5])
- rotate([90, 0, 0])
- cylinder(d = 1.5, h = 34);
-
-
- translate([-1, 11, -3.5])
- ellipse(2, 12, 8);
- }
|