Rev 4571 Rev 4578
1 use <text/Write.scad> 1 use <text/Write.scad>
2 include <manufactury_conf.scad> 2 include <manufactury_conf.scad>
3 include <../configuration.scad> 3 include <../configuration.scad>
4 /* 4 /*
5 pocet_der1=5; 5 pocet_der1=5;
6 pocet_der2=3; 6 pocet_der2=3;
7 radidus_hrany=5; 7 radidus_hrany=5;
8 vzdalenost_der=10.16; 8 vzdalenost_der=10.16;
9 vzdalenost_od_okraje=8.8; 9 vzdalenost_od_okraje=8.8;
10 prumer_sroubu=3.3; 10 prumer_sroubu=3.3;
11   11  
12 tloustka_plbase=2; 12 tloustka_plbase=2;
13 prekryti_der=0.3; 13 prekryti_der=0.3;
14   14  
15 vyska_nozicky=5; 15 vyska_nozicky=5;
16   16  
17 vyska_hlavy = 3.5; 17 vyska_hlavy = 3.5;
18 prumer_hlavy=6; 18 prumer_hlavy=6;
19 */ 19 */
20   20  
21 //PLBASE ZAKLADNI 21 //PLBASE ZAKLADNI
22 //------------------------------------------------------------ 22 //------------------------------------------------------------
23 module plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,tloustka_bocnice){ 23 module plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,tloustka_bocnice){
24   24  
25 difference () { 25 difference () {
26 //union () { 26 //union () {
27 translate([radidus_hrany,radidus_hrany,0]) 27 translate([radidus_hrany,radidus_hrany,0])
28 minkowski() 28 minkowski()
29 { 29 {
30 cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,tloustka_plbase]); // base plastics brick 30 cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,tloustka_plbase]); // base plastics brick
31 cylinder(r=radidus_hrany,h=0.1); 31 cylinder(r=radidus_hrany,h=0.1);
32 } 32 }
33 33
34   34  
35 for (i = [0:1:pocet_der1-1]) { 35 for (i = [0:1:pocet_der1-1]) {
36 for (a = [0:1:pocet_der2-1]) { 36 for (a = [0:1:pocet_der2-1]) {
37 37
38 translate([vzdalenost_od_okraje+vzdalenost_der*i+tloustka_bocnice,vzdalenost_od_okraje+vzdalenost_der*a+tloustka_bocnice, (tloustka_plbase-prekryti_der)/2]) // center top screw 38 translate([vzdalenost_od_okraje+vzdalenost_der*i+tloustka_bocnice,vzdalenost_od_okraje+vzdalenost_der*a+tloustka_bocnice, (tloustka_plbase-prekryti_der)/2]) // center top screw
39 cylinder(((tloustka_plbase-prekryti_der)), d=prumer_sroubu, center=true); 39 cylinder(((tloustka_plbase-prekryti_der)), d=prumer_sroubu, center=true);
40 } 40 }
41 } 41 }
42 42
43 43
44 } 44 }
45 } 45 }
46   46  
47   47  
48   48  
49 //MODEL NOZICKY PRO PLBASE 49 //MODEL NOZICKY PRO PLBASE
50 //----------------------------------------------------------- 50 //-----------------------------------------------------------
51 //průmer nozicky je roven vzdalenost_der 51 //průmer nozicky je roven vzdalenost_der
52 module nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy) 52 module nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy)
53 { 53 {
54 difference () { 54 difference () {
55 translate([0,0,-vyska_nozicky/2]) 55 translate([0,0,-vyska_nozicky/2])
56 cylinder((vyska_nozicky), d=vzdalenost_der, center=true); 56 cylinder((vyska_nozicky), d=vzdalenost_der, center=true);
57 translate([0,0,-(vyska_nozicky-vyska_hlavy/2)]) 57 translate([0,0,-(vyska_nozicky-vyska_hlavy/2)])
58 cylinder((vyska_hlavy), d=prumer_hlavy, center=true); 58 cylinder((vyska_hlavy), d=prumer_hlavy, center=true);
59 translate([0,0,-vyska_nozicky/2]) 59 translate([0,0,-vyska_nozicky/2])
60 cylinder((vyska_nozicky), d=prumer_sroubu, center=true); 60 cylinder((vyska_nozicky), d=prumer_sroubu, center=true);
61 } 61 }
62 } 62 }
63   63  
64   64  
65   65  
66 //PLBASE S NOZICKAMA 66 //PLBASE S NOZICKAMA
67 //----------------------------------------------------------- 67 //-----------------------------------------------------------
68 module plbase_s_nozickama(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){ 68 module plbase_s_nozickama(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){
69 69
70 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der); 70 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
71 71
72 translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase)]) // center top screw 72 translate([vzdalenost_od_okraje,vzdalenost_od_okraje, (tloustka_plbase)]) // center top screw
73 rotate(a=[180,0,0]) 73 rotate(a=[180,0,0])
74 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy); 74 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
75 75
76 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, tloustka_plbase]) // center top screw 76 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, tloustka_plbase]) // center top screw
77 rotate(a=[180,0,0]) 77 rotate(a=[180,0,0])
78 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy); 78 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
79   79  
80 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw 80 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
81 rotate(a=[180,0,0]) 81 rotate(a=[180,0,0])
82 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy); 82 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
83 83
84 translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw 84 translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
85 rotate(a=[180,0,0]) 85 rotate(a=[180,0,0])
86 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy); 86 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
87 87
88 88
89 } 89 }
90 90
91 91
92   92  
93 //PLBASE SE ZAPUSTENIM SROUBU 93 //PLBASE SE ZAPUSTENIM SROUBU
94 //------------------------------------------------------ 94 //------------------------------------------------------
95 module plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy){ 95 module plbase_zapustene_srouby(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_hlavy,prekryti_der,prumer_hlavy){
96 difference () { 96 difference () {
97 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,(vyska_hlavy+1.5),prekryti_der); 97 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,(vyska_hlavy+1.5),prekryti_der);
98   98  
99 translate([vzdalenost_od_okraje,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw 99 translate([vzdalenost_od_okraje,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
100 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true); 100 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
101 101
102 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw 102 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje, 1.5+(vyska_hlavy/2)]) // center top screw
103 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true); 103 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
104   104  
105 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw 105 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
106 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true); 106 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
107 107
108 translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw 108 translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, 1.5+(vyska_hlavy/2)]) // center top screw
109 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true); 109 cylinder(((vyska_hlavy+0.5)), d=prumer_hlavy, center=true);
110   110  
111 } 111 }
112 } 112 }
113   113  
114   114  
115 //PLBASE S NOZICKAMA polovicni pro tisk 115 //PLBASE S NOZICKAMA polovicni pro tisk
116 //----------------------------------------------------------- 116 //-----------------------------------------------------------
117 module plbase_s_nozickama_polovicni(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){ 117 module plbase_s_nozickama_polovicni(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){
118   118  
119 difference() 119 difference()
120 { 120 {
121 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der); 121 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
122 122
123 123
124 translate([-1,-1, -1]) 124 translate([-1,-1, -1])
125 125
126 cube([(pocet_der1+1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,1+((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2,tloustka_plbase+15]); 126 cube([(pocet_der1+1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,1+((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2,tloustka_plbase+15]);
127 } 127 }
128 128
129   129  
130   130  
131 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw 131 translate([vzdalenost_od_okraje+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
132 rotate(a=[180,0,0]) 132 rotate(a=[180,0,0])
133 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy); 133 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
134 134
135 translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw 135 translate([vzdalenost_od_okraje,vzdalenost_od_okraje+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase)]) // center top screw
136 rotate(a=[180,0,0]) 136 rotate(a=[180,0,0])
137 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy); 137 nozicka (vzdalenost_der,vyska_nozicky,prumer_sroubu,vyska_hlavy,prumer_hlavy);
138   138  
139 139
140 140
141 141
142 } 142 }
143   143  
144 //PLBASE polovicni pro tisk 144 //PLBASE polovicni pro tisk
145 //----------------------------------------------------------- 145 //-----------------------------------------------------------
146 module plbase_polovicni(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){ 146 module plbase_polovicni(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,vyska_nozicky,vyska_hlavy,prumer_hlavy){
147   147  
148 difference() 148 difference()
149 { 149 {
150 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der); 150 plbase(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der);
151 151
152 152
153 translate([-1,-1, -1]) 153 translate([-1,-1, -1])
154 154
155 cube([(pocet_der1+1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,1+((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2,tloustka_plbase+15]); 155 cube([(pocet_der1+1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,1+((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2,tloustka_plbase+15]);
156 } 156 }
157 157
158 158
159 } 159 }
160 //PLBASE ZAKLADNI - bez der s napisem produktu 160 //PLBASE ZAKLADNI - bez der s napisem produktu
161 //------------------------------------------------------------ 161 //------------------------------------------------------------
162 module plbase_bez_der_napis(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,box_jmeno,tloustka_bocnice){ 162 module plbase_bez_der_napis(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,box_jmeno,tloustka_bocnice){
163   163  
164   164  
165   165  
166 difference () { 166 difference () {
167 //union () { 167 //union () {
168 translate([radidus_hrany,radidus_hrany,0]) 168 translate([radidus_hrany,radidus_hrany,0])
169 minkowski() 169 minkowski()
170 { 170 {
171 cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,tloustka_plbase]); // base plastics brick 171 cube([(pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,tloustka_plbase]); // base plastics brick
172 cylinder(r=radidus_hrany,h=0.1); 172 cylinder(r=radidus_hrany,h=0.1);
173 } 173 }
174 translate([radidus_hrany,radidus_hrany,0]) 174 translate([radidus_hrany,radidus_hrany,0])
175 translate([ ((pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2+tloustka_bocnice, ((pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2+tloustka_bocnice, tloustka_plbase/2+1]) 175 translate([ ((pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2+tloustka_bocnice, ((pocet_der2-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2+tloustka_bocnice, tloustka_plbase/2+1])
176 rotate([0,0,0]) 176 rotate([0,0,0])
177 write(box_jmeno,h=10,t=tloustka_plbase-1, space= 1.1, font = "Letters.dxf",center=true); 177 write(box_jmeno,h=10,t=tloustka_plbase-1, space= 1.1, font = "Letters.dxf",center=true);
178   178  
179 179
180 translate([vzdalenost_od_okraje+tloustka_bocnice,vzdalenost_od_okraje+tloustka_bocnice, (tloustka_plbase/2)]) // center top screw 180 translate([vzdalenost_od_okraje+tloustka_bocnice,vzdalenost_od_okraje+tloustka_bocnice, (tloustka_plbase/2)]) // center top screw
181 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true); 181 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
182 182
183 translate([vzdalenost_od_okraje+tloustka_bocnice+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+tloustka_bocnice, (tloustka_plbase/2)]) // center top screw 183 translate([vzdalenost_od_okraje+tloustka_bocnice+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+tloustka_bocnice, (tloustka_plbase/2)]) // center top screw
184 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true); 184 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
185   185  
186 translate([vzdalenost_od_okraje+tloustka_bocnice+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+tloustka_bocnice+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw 186 translate([vzdalenost_od_okraje+tloustka_bocnice+(pocet_der1-1)*vzdalenost_der,vzdalenost_od_okraje+tloustka_bocnice+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
187 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true); 187 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
188 188
189 translate([vzdalenost_od_okraje+tloustka_bocnice,vzdalenost_od_okraje+tloustka_bocnice+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw 189 translate([vzdalenost_od_okraje+tloustka_bocnice,vzdalenost_od_okraje+tloustka_bocnice+(pocet_der2-1)*vzdalenost_der, (tloustka_plbase/2)]) // center top screw
190 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true); 190 cylinder(((tloustka_plbase+0.3)), d=prumer_sroubu, center=true);
-   191  
-   192  
-   193  
-   194  
-   195  
191 196
192 } 197 }
193 } 198 }
194   199  
195   200  
196   201  
197 //PLbase vrchní 202 //PLbase vrchní
198 //------------------------------------------------------------ 203 //------------------------------------------------------------
199   204  
200   205  
201 module plbase_vrchni_kryt(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,plbase_tolerance_horni){ 206 module plbase_vrchni_kryt(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,plbase_tolerance_horni){
202   207  
203 difference () { 208 difference () {
204 // translate([0,((pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice)/2,0]) 209 // translate([0,((pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice)/2,0])
205 cube([(pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,(pocet_der1+2)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,tloustka_plbase],true); 210 cube([(pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,(pocet_der1+2)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,tloustka_plbase],true);
206   211  
207 212
208 union() 213 union()
209 { 214 {
210 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) 215 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2])
211 rotate(a=[180,0,90]) 216 rotate(a=[180,0,90])
212 translate([radidus_hrany,radidus_hrany,0]) 217 translate([radidus_hrany,radidus_hrany,0])
213 translate([-tloustka_bocnice,-tloustka_bocnice,0]) 218 translate([-tloustka_bocnice,-tloustka_bocnice,0])
214 219
215 //obvod 220 //obvod
216 difference () { 221 difference () {
217   222  
218   223  
219 minkowski() 224 minkowski()
220 { 225 {
221 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick 226 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick
222 cylinder(r=radidus_hrany,h=0.1); 227 cylinder(r=radidus_hrany,h=0.1);
223 } 228 }
224 translate([tloustka_bocnice,tloustka_bocnice,-0.1]) 229 translate([tloustka_bocnice,tloustka_bocnice,-0.1])
225 minkowski() 230 minkowski()
226 { 231 {
227 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick 232 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick
228 cylinder(r=radidus_hrany,h=0.1); 233 cylinder(r=radidus_hrany,h=0.1);
229 } 234 }
230 235
231 236
232 237
233 238
234 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2]) 239 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2])
235 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 240 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
236 241
237 242
238 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2]) 243 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2])
239 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 244 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
240 245
241 246
242 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2]) 247 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2])
243 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 248 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
244 249
245 250
246 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2]) 251 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2])
247 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 252 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
248 253
249   254  
250 255
251 } 256 }
252 257
253 258
254 259
255 260
256 //pro vyboceni sloupku 261 //pro vyboceni sloupku
257 262
258 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) 263 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2])
259 rotate(a=[180,0,90]) 264 rotate(a=[180,0,90])
260 translate([radidus_hrany,radidus_hrany,0]) 265 translate([radidus_hrany,radidus_hrany,0])
261 translate([-2*tloustka_bocnice,-2*tloustka_bocnice,0]) 266 translate([-2*tloustka_bocnice,-2*tloustka_bocnice,0])
262 difference () { 267 difference () {
263   268  
264 translate([-(5)*vzdalenost_der/2,-(5)*vzdalenost_der/2,0]) 269 translate([-(5)*vzdalenost_der/2,-(5)*vzdalenost_der/2,0])
265 minkowski() 270 minkowski()
266 { 271 {
267 cube([(pocet_der1+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,(pocet_der2+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick 272 cube([(pocet_der1+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,(pocet_der2+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick
268 cylinder(r=radidus_hrany,h=0.1); 273 cylinder(r=radidus_hrany,h=0.1);
269 } 274 }
270 translate([tloustka_bocnice,tloustka_bocnice,-0.2]) 275 translate([tloustka_bocnice,tloustka_bocnice,-0.2])
271 minkowski() 276 minkowski()
272 { 277 {
273 278
274 279
275 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); // base plastics brick 280 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); // base plastics brick
276 cylinder(r=radidus_hrany,h=0.1); 281 cylinder(r=radidus_hrany,h=0.1);
277 } 282 }
278 283
279 284
280 285
281 286
282 287
283 } 288 }
284 } 289 }
285 //SLOUPKY 290 //SLOUPKY
286 //------------------------------------------------------------ 291 //------------------------------------------------------------
287 //sloupek 1 292 //sloupek 1
288   293  
289 translate([(-(pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 294 translate([(-(pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
290   295  
291 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 296 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
292   297  
293 //sloupek 2 298 //sloupek 2
294   299  
295 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 300 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
296 rotate(a=[0,0,90]) 301 rotate(a=[0,0,90])
297 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 302 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
298   303  
299 //sloupek 3 304 //sloupek 3
300   305  
301 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 306 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
302 rotate(a=[0,0,180]) 307 rotate(a=[0,0,180])
303 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 308 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
304   309  
305 //sloupek 4 310 //sloupek 4
306   311  
307 translate([-((pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 312 translate([-((pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
308 rotate(a=[0,0,270]) 313 rotate(a=[0,0,270])
309 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 314 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
310 315
311 316
312   317  
313 318
314   319  
315   320  
316   321  
317   322  
318   323  
319 } 324 }
320 } 325 }
321   326  
322 plbase_vrchni_kryt_pro_odecet(pocet_der1+2,pocet_der2+2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,-0.6); 327 plbase_vrchni_kryt_pro_odecet(pocet_der1-1,pocet_der2-1,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,-0.2,tloustka_plbase);
323   328  
324 //PLbase vrchní - pro odecet 329 //PLbase vrchní - pro odecet
325 //------------------------------------------------------------ 330 //------------------------------------------------------------
326   331  
327   332  
328 module plbase_vrchni_kryt_pro_odecet(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,plbase_tolerance_horni,tloustka_plbase){ 333 module plbase_vrchni_kryt_pro_odecet(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,plbase_tolerance_horni,tloustka_plbase){
329   334  
330 difference () { 335 difference () {
331 translate([0,((pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice)/2,0]) 336 translate([0,((pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice)/2,0])
332 cube([(pocet_der2+3)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,(pocet_der1+3)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,tloustka_plbase],true); 337 cube([(pocet_der2+3)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,(pocet_der1+3)*vzdalenost_der+2*vzdalenost_od_okraje+2*tloustka_bocnice,tloustka_plbase],true);
333   338  
334 339
335 union() 340 union()
336 { 341 {
337 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) 342 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2])
338 rotate(a=[180,0,90]) 343 rotate(a=[180,0,90])
339 translate([radidus_hrany,radidus_hrany,0]) 344 translate([radidus_hrany,radidus_hrany,0])
340 translate([-tloustka_bocnice,-tloustka_bocnice,0]) 345 translate([-tloustka_bocnice,-tloustka_bocnice,0])
341 346
342 //obvod 347 //obvod
343 difference () { 348 difference () {
344   349  
345   350  
346 minkowski() 351 minkowski()
347 { 352 {
348 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase]); // base plastics brick 353 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase]); // base plastics brick
349 cylinder(r=radidus_hrany,h=0.1); 354 cylinder(r=radidus_hrany,h=0.1);
350 } 355 }
351 translate([tloustka_bocnice,tloustka_bocnice,-0.1]) 356 translate([tloustka_bocnice,tloustka_bocnice,-0.1])
352 minkowski() 357 minkowski()
353 { 358 {
354 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick 359 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick
355 cylinder(r=radidus_hrany,h=0.1); 360 cylinder(r=radidus_hrany,h=0.1);
356 } 361 }
357 362
358 363
359 364
360 365
361 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2]) 366 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2])
362 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 367 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
363 368
364 369
365 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2]) 370 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,-0.2])
366 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 371 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
367 372
368 373
369 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2]) 374 translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2])
370 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 375 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
371 376
372 377
373 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2]) 378 translate([-radidus_hrany-tloustka_bocnice-3*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.2])
374 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); 379 cube([vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vzdalenost_der/2+tloustka_bocnice+plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]);
375 380
376   381  
377 382
378 } 383 }
379 384
380 385
381 386
382 387
383 //pro vyboceni sloupku 388 //pro vyboceni sloupku
384 389
385 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) 390 translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2])
386 rotate(a=[180,0,90]) 391 rotate(a=[180,0,90])
387 translate([radidus_hrany,radidus_hrany,0]) 392 translate([radidus_hrany,radidus_hrany,0])
388 translate([-2*tloustka_bocnice,-2*tloustka_bocnice,0]) 393 translate([-2*tloustka_bocnice,-2*tloustka_bocnice,0])
389 difference () { 394 difference () {
390   395  
391 translate([-(5)*vzdalenost_der/2,-(5)*vzdalenost_der/2,0]) 396 translate([-(5)*vzdalenost_der/2,-(5)*vzdalenost_der/2,0])
392 minkowski() 397 minkowski()
393 { 398 {
394 cube([(pocet_der1+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,(pocet_der2+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick 399 cube([(pocet_der1+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,(pocet_der2+5)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick
395 cylinder(r=radidus_hrany,h=0.1); 400 cylinder(r=radidus_hrany,h=0.1);
396 } 401 }
397 translate([tloustka_bocnice,tloustka_bocnice,-0.2]) 402 translate([tloustka_bocnice,tloustka_bocnice,-0.2])
398 minkowski() 403 minkowski()
399 { 404 {
400 405
401 406
402 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); // base plastics brick 407 cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice-2*plbase_tolerance_horni,vyska_bocnice+tloustka_plbase+0.4]); // base plastics brick
403 cylinder(r=radidus_hrany,h=0.1); 408 cylinder(r=radidus_hrany,h=0.1);
404 } 409 }
405 410
406 411
407 412
408 413
409 414
410 } 415 }
411 } 416 }
412 //SLOUPKY 417 //SLOUPKY
413 //------------------------------------------------------------ 418 //------------------------------------------------------------
414 //sloupek 1 419 //sloupek 1
415   420  
416 translate([(-(pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 421 translate([(-(pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
417   422  
418 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 423 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
419   424  
420 //sloupek 2 425 //sloupek 2
421   426  
422 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 427 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni,-tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
423 rotate(a=[0,0,90]) 428 rotate(a=[0,0,90])
424 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 429 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
425   430  
426 //sloupek 3 431 //sloupek 3
427   432  
428 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 433 translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
429 rotate(a=[0,0,180]) 434 rotate(a=[0,0,180])
430 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 435 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
431   436  
432 //sloupek 4 437 //sloupek 4
433   438  
434 translate([-((pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase]) 439 translate([-((pocet_der2)*vzdalenost_der)/2-tloustka_bocnice-plbase_tolerance_horni, (pocet_der1)*vzdalenost_der+tloustka_bocnice-plbase_tolerance_horni,-tloustka_plbase])
435 rotate(a=[0,0,270]) 440 rotate(a=[0,0,270])
436 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase); 441 cylinder(r=prumer_sroubu/2,h=6*tloustka_plbase);
437 442
438 443 //nápis
439   444
-   445 translate([radidus_hrany,radidus_hrany,0])
-   446 translate([ 0, ((pocet_der1-1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany)/2+tloustka_bocnice, tloustka_plbase/2-(tloustka_plbase-1)/2+0.01])
440 447 rotate([0,0,0])
-   448 write(box_jmeno,h=10,t=tloustka_plbase-1, space= 1.1, font = "Letters.dxf",center=true);
441   449  
442   450  
443   451  
444   452  
445   453  
446 } 454 }
447 } 455 }
448   456  
449   -  
450   457  
451 458