1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
x = 14;
y = 6;
rEcke = 5;
dInnen = 1;
dAuszen = 1.62;
Gang = 2/3;
Laenge = 6;
difference() {
intersection() {
union() {
for (p = [[-x,0,0],[0,y,0],[0,-y,0]])
translate(p + [65/2-7,0,5/2])
cylinder(h = 3, r = 3.5/2, $fn=100);
cube([65-2*rEcke,18,5], center = true);
cube([65,18-2*rEcke,5], center = true);
for (i = [-1:2:1])
for (j = [-1:2:1])
translate([i*(65/2-rEcke),j*(18/2-rEcke),0])
cylinder(h = 5, r = rEcke, $fn = 100, center = true);
intersection() {
translate([0,4,-9])
cube([30,18+2*4,23], center = true);
rotate([-15,0,0])
cube([30,29,50], center = true);
};
};
translate([0,8,0])
rotate([35,0,0])
cube([65,29,50], center = true);
};
translate([65/2-12,0,0])
cylinder(h = 10, r = 5, $fn=100, center = true);
translate([0,10,-13.5/2-5/2])
rotate([0,90,0])
cylinder(h = 40, r = 13.5/2, $fn=100, center = true);
for (p = [[-x,0,0],[0,y,0],[0,-y,0]])
translate(p + [65/2-7,0,5/2])
linear_extrude(Laenge, twist = Laenge/Gang*360, slices=Laenge/Gang*50, $fn=100)
translate([(dAuszen-dInnen)/4,0,0])
circle(r = (dAuszen+dInnen)/4, $fn=100);
}
|