1 |
include <configuration.scad> |
- |
|
2 |
|
- |
|
3 |
module lista (vzdalenost_der,pocet_der,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tlouska_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu) { |
1 |
module lista (vzdalenost_der,pocet_der,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tlouska_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu) { |
4 |
difference () { |
2 |
difference () { |
5 |
color("cyan") |
3 |
color("cyan") |
6 |
translate([0, 0, 0]) |
4 |
translate([0, 0, 0]) |
7 |
linear_extrude(height = zapust+vyska_listy) |
5 |
linear_extrude(height = zapust+vyska_listy) |
8 |
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
6 |
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
9 |
|
7 |
|
10 |
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)]) |
8 |
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)]) |
11 |
linear_extrude(height = vyska_listy) |
9 |
linear_extrude(height = vyska_listy) |
12 |
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
10 |
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
13 |
|
11 |
|
14 |
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)]) |
12 |
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)]) |
15 |
linear_extrude(height = vyska_listy) |
13 |
linear_extrude(height = vyska_listy) |
16 |
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
14 |
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
17 |
|
15 |
|
18 |
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)]) |
16 |
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)]) |
19 |
linear_extrude(height = vyska_listy) |
17 |
linear_extrude(height = vyska_listy) |
20 |
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
18 |
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
21 |
|
19 |
|
22 |
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)]) |
20 |
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)]) |
23 |
linear_extrude(height = vyska_listy) |
21 |
linear_extrude(height = vyska_listy) |
24 |
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
22 |
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true); |
25 |
|
23 |
|
26 |
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust]) |
24 |
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust]) |
27 |
linear_extrude(height = vyska_listy) |
25 |
linear_extrude(height = vyska_listy) |
28 |
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true); |
26 |
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true); |
29 |
|
27 |
|
30 |
|
28 |
|
31 |
//otvory pro hlavy sroubu |
29 |
//otvory pro hlavy sroubu |
32 |
|
30 |
|
33 |
translate([vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw |
31 |
translate([vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw |
34 |
cylinder(vyska_hlavy, d=prumer_hlavy, center=true); |
32 |
cylinder(vyska_hlavy, d=prumer_hlavy, center=true); |
35 |
|
33 |
|
36 |
translate([-vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw |
34 |
translate([-vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw |
37 |
cylinder(vyska_hlavy, d=prumer_hlavy, center=true); |
35 |
cylinder(vyska_hlavy, d=prumer_hlavy, center=true); |
38 |
|
36 |
|
39 |
//otvory pro srouby |
37 |
//otvory pro srouby |
40 |
|
38 |
|
41 |
for (i = [0:1:pocet_der]) { |
39 |
for (i = [0:1:pocet_der]) { |
42 |
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw |
40 |
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-(((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje),(zapust-vyska_hlavy)+vyska_hlavy/2]) // center top screw |
43 |
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true); |
41 |
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true); |
44 |
} |
42 |
} |
45 |
//otvory pro matice |
43 |
//otvory pro matice |
46 |
|
44 |
|
47 |
for (i = [1:1:(pocet_der-1)]) { |
45 |
for (i = [1:1:(pocet_der-1)]) { |
48 |
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje)-((((prumer_matice+posuv_dorazu+vzdalenost_od_diry)/2))-(prumer_matice+posuv_dorazu)/2)),matice_sila_materialu]) // center top screw |
46 |
translate([(-i*vzdalenost_der)+vzdalenost_der*pocet_der/2,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-vzdalenost_od_okraje)-((((prumer_matice+posuv_dorazu+vzdalenost_od_diry)/2))-(prumer_matice+posuv_dorazu)/2)),matice_sila_materialu]) // center top screw |
49 |
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true); |
47 |
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true); |
50 |
|
48 |
|
51 |
} |
49 |
} |
52 |
} |
50 |
} |
53 |
} |
51 |
} |
54 |
|
52 |
|
55 |
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu); |
53 |
lista (vzdalenost_der,pocet_der1,vzdalenost_od_okraje,vzdalenost_od_diry,vzdalenost_1,vzdalenost_2, zapust,vyska_listy,tloustka_celicka,sirka_materialu,vyska_hlavy,prumer_hlavy,prumer_sroubu,prumer_matice,vyska_matice,posuv_dorazu,matice_sila_materialu); |
56 |
|
54 |
|
57 |
|
55 |
|