/Modules/Mechanical/Boxes/BASEBOX01A/CAD/celicko.scad
1,14 → 1,9
vyska = 60; //celeho slouplku
zapust = 6.5; //vyska zapusteni listy
vule_vysky_celicka =1; //definuje vůli celicka v liste
delka_celicka=30;
tloustka_celicka = 3;
vule_tlousky = 0.25;
 
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = vyska-2*zapust-vule_vysky_celicka)
square([delka_celicka, tloustka_celicka-vule_tlousky], center = true);
include <configuration.scad>
 
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = vyska-2*zapust-vule_vysky_celicka)
square([delka_celicka, tloustka_celicka-vule_tlousky], center = true);
}
/Modules/Mechanical/Boxes/BASEBOX01A/CAD/configuration.scad
0,0 → 1,88
$fn=20; // model faces resolution.
 
vyska = 60; //celeho slouplku
zapust = 6.5; //vyska zapusteni listy
vule_vysky_celicka =1; //definuje vůli celicka v liste
delka_celicka=30;
tloustka_celicka = 3;
vule_tlousky = 0.25;
 
vzdalenost_der = 10; //rozteč děr mezi sebou
pocet_der = 14; //pocet ter pres ktere je lista ponížené o 1
 
//rozměry výrezu
//rozmer v ose y
vzdalenost_od_okraje = 10; //vzdalenost stredu upevnovaci diry od kraje desky
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
//definicce celkové výšky lišty
zapust=6; //závislé na sloupku
vyska_listy=5;
 
//parametry pro úžlabinu
tlouska_celicka = 3; //definuje uzlabinu
sirka_materialu = 3; //sirka materialu od kraje desky k uzlabine
 
//parametry šroubu
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//parametry matice
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
vzdalenost_der = 10; //rozteč děr mezi sebou
pocet_der = 21; //pocet ter pres ktere je lista ponížené o 1
 
 
//rozměry výrezu
//rozmer v ose y
vzdalenost_od_okraje = 10; //vzdalenost stredu upevnovaci diry od kraje desky
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
//definicce celkové výšky lišty
zapust=6; //závislé na sloupku
vyska_listy=5;
 
//parametry pro úžlabinu
tlouska_celicka = 3; //definuje uzlabinu
sirka_materialu = 3; //sirka materialu od kraje desky k uzlabine
 
//parametry šroubu
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//parametry matice
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
vyska = 60; //celeho sloupku
zapust = 6.5; //vyska zapusteni listy
vzdalenost_der = 10; //roztec upevňovacich der
vzdalenost_od_okraje = 10; //vzdalenost stredu upevnovaci diry od kraje desky
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
radidus_hrany = 5; //radius zaobleni
 
//parametry šroubu
prumer_sroubu=3.3;
 
 
//parametry matice
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod/nad maticí na ose z
/Modules/Mechanical/Boxes/BASEBOX01A/CAD/lista14.scad
1,85 → 1,53
vzdalenost_der = 10; //rozteč děr mezi sebou
pocet_der = 14; //pocet ter pres ktere je lista ponížené o 1
 
//rozměry výrezu
//rozmer v ose y
vzdalenost_od_okraje = 10; //vzdalenost stredu upevnovaci diry od kraje desky
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
//definicce celkové výšky lišty
zapust=6; //závislé na sloupku
vyska_listy=5;
 
//parametry pro úžlabinu
tlouska_celicka = 3; //definuje uzlabinu
sirka_materialu = 3; //sirka materialu od kraje desky k uzlabine
 
//parametry šroubu
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//parametry matice
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
 
for (i = [0:1:pocet_der]) {
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
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
for (i = [1:1:(pocet_der-1)]) {
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
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
include <configuration.scad>
 
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
 
for (i = [0:1:pocet_der]) {
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
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
for (i = [1:1:(pocet_der-1)]) {
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
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
/Modules/Mechanical/Boxes/BASEBOX01A/CAD/lista21.scad
1,85 → 1,56
vzdalenost_der = 10; //rozteč děr mezi sebou
pocet_der = 21; //pocet ter pres ktere je lista ponížené o 1
 
//rozměry výrezu
//rozmer v ose y
vzdalenost_od_okraje = 10; //vzdalenost stredu upevnovaci diry od kraje desky
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
 
//rozmery vyrezu v ose x
vzdalenost_1 = 4.6; //od díry ke kraji
vzdalenost_2 = 5;
 
//definicce celkové výšky lišty
zapust=6; //závislé na sloupku
vyska_listy=5;
 
//parametry pro úžlabinu
tlouska_celicka = 3; //definuje uzlabinu
sirka_materialu = 3; //sirka materialu od kraje desky k uzlabine
 
//parametry šroubu
vyska_hlavy = 3.5;
prumer_hlavy=6;
prumer_sroubu=3.3;
 
//parametry matice
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod maticí na ose z
 
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
 
for (i = [0:1:pocet_der]) {
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
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
for (i = [1:1:(pocet_der-1)]) {
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
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
include <configuration.scad>
 
difference () {
color("cyan")
translate([0, 0, 0])
linear_extrude(height = zapust+vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1+vzdalenost_2/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_2, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([-((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([((((pocet_der*vzdalenost_der)+2*vzdalenost_1)/2)-(vzdalenost_1/2)), 0, (zapust)])
linear_extrude(height = vyska_listy)
square([vzdalenost_1, vzdalenost_od_okraje+vzdalenost_od_diry], center = true);
translate([0,-((((vzdalenost_od_okraje+vzdalenost_od_diry)/2)-sirka_materialu)-(tlouska_celicka/2)), zapust])
linear_extrude(height = vyska_listy)
square([((pocet_der*vzdalenost_der)+2*vzdalenost_1), tlouska_celicka], center = true);
//otvory pro hlavy sroubu
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
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
cylinder(vyska_hlavy, d=prumer_hlavy, center=true);
//otvory pro srouby
 
for (i = [0:1:pocet_der]) {
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
cylinder((2*(zapust+vyska_listy)), d=prumer_sroubu, center=true);
}
//otvory pro matice
for (i = [1:1:(pocet_der-1)]) {
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
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
}
}
/Modules/Mechanical/Boxes/BASEBOX01A/CAD/sloupek.scad
1,111 → 1,96
vyska = 60; //celeho sloupku
zapust = 6.5; //vyska zapusteni listy
vzdalenost_der = 10; //roztec upevňovacich der
vzdalenost_od_okraje = 10; //vzdalenost stredu upevnovaci diry od kraje desky
vzdalenost_od_diry = 5; //vzdalenost od stredu upevnovaci diry na druhou stranu
radidus_hrany = 5; //radius zaobleni
 
//parametry šroubu
prumer_sroubu=3.3;
 
 
//parametry matice
prumer_matice=6; //hrany k hraně
vyska_matice=3; //vyska matice
posuv_dorazu=0; //pro moznost posuvu dorazu pro vsunutí matice
matice_sila_materialu=2; //sila materialu pod/nad maticí na ose z
 
difference () {
union () {
color("green")
translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw
cylinder(vyska, d=(2*radidus_hrany), center=true);
 
color("cyan")
translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_der/2], center = true);
 
color("gray")
translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true);
color("gray")
translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_od_okraje], center = true);
color("red")
translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true);
 
color("green")
translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([ vzdalenost_od_okraje,vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([(vzdalenost_od_diry), vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_diry ], center = true);
}
 
//diry na sroub
translate([0,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([vzdalenost_der,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([0,vzdalenost_der,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
//diry na matice
//1. krajni matice
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
//2. krajni matice
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
//prostredni dira
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
}
include <configuration.scad>
 
difference () {
union () {
color("green")
translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw
cylinder(vyska, d=(2*radidus_hrany), center=true);
 
color("cyan")
translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_der/2], center = true);
 
color("gray")
translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2])
linear_extrude(height = vyska)
square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true);
color("gray")
translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_der/2, vzdalenost_od_okraje], center = true);
color("red")
translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2])
linear_extrude(height = vyska)
square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true);
 
color("green")
translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_okraje], center = true);
color("red")
translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([ vzdalenost_od_okraje,vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([(vzdalenost_od_diry), vzdalenost_der], center = true);
color("cyan")
translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2])
linear_extrude(height = (vyska-(2*zapust)))
square([vzdalenost_der, vzdalenost_od_diry ], center = true);
}
 
//diry na sroub
translate([0,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([vzdalenost_der,0,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
translate([0,vzdalenost_der,0]) // center top screw
cylinder(2*vyska, d=(prumer_sroubu), center=true);
 
//diry na matice
//1. krajni matice
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
//2. krajni matice
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
 
//prostredni dira
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
 
 
}