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