3d-stuff/openscad/own/Stanley Drawers/drawer.scad

85 lines
1.3 KiB
OpenSCAD

// Stanley Tool Organizer Drawers/Separators for the side-panel
// by zeus - zeus@ctdo.de - CC-BY-NC-4.0
// -> https://www.thingiverse.com/zeus
// -> https://github.com/zeus86
// 2014-11-25
// =================================
//inner width
wi=60;
//overall width
wo=64;
//height
h=54;
//end-cylinder-diameter
cd=6.3;
//material thickness
mt=3;
//drawer height
dh=h/4;
//drawer width
dw=wi;
$fn=50;
// =================================
module inner_wall(){
translate([0,0,h/2]){
cube([wi-mt,mt,h],center=true);
}
translate([0,0,dh/2]){
cube([dw-mt,mt*2,dh],center=true);
}
}
module outer_half_circle(){
translate([0,0,h/2]){
difference(){
cylinder(r=cd/2+mt,h=h,center=true);
cylinder(r=cd/2,h=h+1,center=true);
}
}
}
module cut_edge(){
translate([0,0,h/2]){
cube([wo,cd*3,h],center=true);
}
}
// =================================
module drawer(){
intersection(){
union(){
inner_wall();
for (x=[wi/2+cd/4,-wi/2-cd/4]){
translate([x,0,0]){
outer_half_circle();
}
}
}
cut_edge();
}
}
module drawer_flat(){
intersection(){
union(){
inner_wall();
translate([wi/2+cd/4,0,0]){
outer_half_circle();
}
translate([-wi/2,0,h/2]){
cube([cd/2,cd*3,h],center=true);
}
}
cut_edge();
}
}
//drawer_flat();
drawer();