5 base_wall = 5; // before the cut to the angles
6 real_base_wall = 1.5; // after the cut
8 angle_horiz = 2; // y axis is horizontal, so this is rotate along x
9 angle_vert = 1; // x axis is vertical, so this is rotate along y
11 center_hole = 8 + 0.3;
20 wing_clip_top_off = 5;
31 cylinder(r = center_d/2, h = base_wall);
33 translate([-side_w/2, -foam_horiz/2-wall, 0])
34 cube([side_w, foam_horiz+2*wall, base_wall]);
35 // wing clips on sides
36 for (x = [-1, 1]) scale([x, 1, 1])
39 translate([side_w/2-wing_clip_w1, -foam_horiz/2-wall, 0])
40 cube([wing_clip_w1, foam_horiz+2*wall, eps]);
42 translate([side_w/2-wing_clip_w1+wing_clip_top_off,
43 -foam_horiz/2-wall, wing_clip_h])
44 cube([wing_clip_w1, foam_horiz+2*wall, eps]);
48 for (x = [-1, 1]) scale([x, 1, 1])
49 translate([fuse_w/2, 0, 0])
50 cylinder(r = fuse_add, h = base_wall, $fn = 16);
51 for (y = [-1, 1]) scale([1, y, 1])
52 translate([0, fuse_h/2, 0])
53 cylinder(r = fuse_add, h = base_wall, $fn = 16);
56 hull() for (x = [-1, 1]) for (y = [-1, 1]) scale([x, y, 1]) {
57 translate([fuse_w/2, 0, 0])
58 cylinder(r = eps, h = base_wall + fuse_top, $fn = 4);
59 translate([0, fuse_h/2, 0])
60 cylinder(r = eps, h = base_wall + fuse_top, $fn = 4);
68 translate([0, 0, -eps])
69 cylinder(r = center_hole/2, h = base_wall + 2*eps);
72 translate([-infty/2, -foam_horiz/2, base_wall])
73 cube([infty, foam_horiz, infty]);
74 // in the center there is only bottom half of the foam
75 translate([-fuse_w/2, 0, base_wall-eps])
76 cube([fuse_w, foam_horiz/2, infty]);
79 for (angle = [0:90:360])
81 translate([screw_dist/2, 0, -eps])
82 cylinder(r = screw_d/2, h = base_wall + 2*eps);
84 hull() for (x = [-1, 1]) for (y = [-1, 1]) scale([x, y, 1]) {
85 translate([fuse_w/2 - wall/sin(atan(fuse_h/fuse_w)), 0, base_wall])
86 cylinder(r = eps, h = base_wall + fuse_top, $fn = 4);
87 translate([0, fuse_h/2 - wall/sin(atan(fuse_w/fuse_h)), base_wall])
88 cylinder(r = eps, h = base_wall + fuse_top, $fn = 4);
93 // now rotate it and cut the bottom
95 rotate([0, angle_horiz, 0])
96 rotate([angle_vert, 0, 0])
97 translate([0, 0, real_base_wall - base_wall])
99 translate([-infty/2, -infty/2, -infty])