Added Project Files

This commit is contained in:
Xavi 2023-01-28 13:23:19 -08:00
commit 13c0ab032b
7 changed files with 164 additions and 0 deletions

9
README.md Normal file
View File

@ -0,0 +1,9 @@
# drawer_design
Scad Design for Desk drawers/monitor stand
## Drawer Case
![Drawer Case](https://github.com/XAWalter/drawer_design/blob/master/images/drawer_case.png)
## Drawer
![Cord Holder](https://github.com/XAWalter/drawer_design/blob/master/images/drawer.png)

58
case.scad Normal file
View File

@ -0,0 +1,58 @@
$fn=10;
module drawer_case(width, length, heighth){
difference(){
cube([width, length, heighth]);
translate([(width*.05)/2,-.1,(heighth*.05)/2]){
scale([1,1,.48]){
cube([width-(width*.05),length-(length*.025)+.1,heighth-(heighth*.05)]);
translate([0,0,heighth]){
cube([width-(width*.05),length-(length*.025)+.1,heighth-(heighth*.05)]);
}
}
}
}
}
module drawer_shell(width, length, heighth){
d_width = width-(width*.05);
d_length = length-(length*.025)+.1;
d_heighth = heighth-(heighth*.05);
difference(){
scale([1,1,.48]){
cube([d_width, d_length, d_heighth]);
}
translate([(d_width*.05)/2,(d_length*.025),(d_heighth*.05)/2]){
scale([.95,.95,.95]){
cube([d_width, d_length,d_heighth*.48]);
}
}
}
}
module drawer_handle(width,length,heighth){
difference(){
difference(){
cube([width*.25,length*.10,heighth*.30]);
translate([width*.025,-.1,-.1]){
cube([width*.20,length*.20,heighth*.25]);
}
}
translate([-2,length*.10,0]){
rotate([135,0,0]){
cube([width,length*.15,heighth*.30]);
}
}
}
}
module drawer(width,length,heighth){
translate([0,10,0]){
drawer_shell(width,length,heighth);
translate([width*.35,-length*.10,heighth*.05]){
drawer_handle(width,length,heighth);
}
}
}

9
drawer.scad Normal file
View File

@ -0,0 +1,9 @@
include <case.scad>
$fn = 100;
width = 100;
length = 100;
heighth = 50;
drawer(width,length,heighth);

8
drawer_case.scad Normal file
View File

@ -0,0 +1,8 @@
include <drawer_modules.scad>
width = 100;
length = 100;
heighth = 50;
drawer_case(width,length,heighth);

80
drawer_modules.scad Normal file
View File

@ -0,0 +1,80 @@
$fn=10;
module drawer_air_hole(width,length,heighth){
translate([width/2,length-5,heighth/2]){
rotate([-90,0,0]){
hull(){
translate([0,heighth/4,0]){
cylinder(h=10,d=20);
}
translate([0,-heighth/4,0]){
cylinder(h=10,d=20);
}
}
}
}
}
module drawer_case_1(width, length, heighth){
difference(){
cube([width, length, heighth]);
translate([(width*.05)/2,-.1,(heighth*.05)/2]){
scale([1,1,.48]){
cube([width-(width*.05),length-(length*.025)+.1,heighth-(heighth*.05)]);
translate([0,0,heighth]){
cube([width-(width*.05),length-(length*.025)+.1,heighth-(heighth*.05)]);
}
}
}
}
}
module drawer_case(width,length,heighth){
difference(){
drawer_case_1(width,length,heighth);
drawer_air_hole(width,length,heighth);
}
}
module drawer_shell(width, length, heighth){
d_width = width-(width*.05);
d_length = length-(length*.025)+.1;
d_heighth = heighth-(heighth*.05);
difference(){
scale([1,1,.48]){
cube([d_width, d_length, d_heighth]);
}
translate([(d_width*.05)/2,(d_length*.025),(d_heighth*.05)/2]){
scale([.95,.95,.95]){
cube([d_width, d_length,d_heighth*.48]);
}
}
}
}
module drawer_handle(width,length,heighth){
difference(){
difference(){
cube([width*.25,length*.10,heighth*.30]);
translate([width*.025,-.1,-.1]){
cube([width*.20,length*.20,heighth*.25]);
}
}
translate([-2,length*.10,0]){
rotate([135,0,0]){
cube([width,length*.15,heighth*.30]);
}
}
}
}
module drawer(width,length,heighth){
translate([0,10,0]){
drawer_shell(width,length,heighth);
translate([width*.35,-length*.10,heighth*.05]){
drawer_handle(width,length,heighth);
}
}
}

BIN
images/drawer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

BIN
images/drawer_case.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB