1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
w_top = 24.5;
w_bottom = 25.3;
h = 21.5;
extra_w = 0.1;
wall_thickness = 2;
ledge_w = 3;
clamp_w = 20;
module shape() {
polygon([[0, 0], [-1.5, w_bottom/2], [0, w_bottom], [h, w_bottom - (w_bottom - w_top)/2], [h, (w_bottom-w_top)/2]]);
}
module segment(wall) {
linear_extrude(clamp_w)
difference() {
offset(wall + extra_w, $fn=32) shape();
offset(extra_w, $fn=32) shape();
mirror([1, 0]) translate([extra_w, ledge_w]) square([5*wall, w_bottom - 2*ledge_w]);
}
}
segment(wall_thickness);
|