Finalized Box Parts

Printing V2
This commit is contained in:
2025-07-29 22:36:18 -04:00
parent a8eff8370c
commit 5522231048
2 changed files with 31 additions and 20 deletions

View File

@@ -4,6 +4,9 @@ Openscad Code by sjc (Stephen Carpenter)
Magnet.svg by [Solar Icons](https://www.figma.com/community/file/1166831539721848736?ref=svgrepo.com) in CC Attribution License Magnet.svg by [Solar Icons](https://www.figma.com/community/file/1166831539721848736?ref=svgrepo.com) in CC Attribution License
Finalized and printing parts.
Snaps could be better.
TODO: TODO:
- Cleanup - Cleanup
- Handles - Handles

View File

@@ -124,17 +124,19 @@ module rb_foot(fw=RB_MOUNT_WIDTH, rl=RB_MOUNT_LEN+5, rh=RB_MOUNT_OUT_H, fl=10) {
} }
module hinge_mount(bz=WIN_THICK, bl=10) { module hinge_mount(bz=WIN_THICK, inv=false, bl=10) {
zspread(l=40) { zspread(l=40) {
zrot(-90)xrot(90)right(5) { zrot(-90)xrot(90)right(5) {
up(3+2) cyl(d1=7, d2=9,h=7, align=V_TOP); up(3+2) cyl(d1=7, d2=9,h=7, align=V_TOP);
thread_insertM3(bl=bl,bz=-(bl-3), $die=true); //thread_insertM3(bl=bl,bz=-(bl-3), $die=true);
m3s_clear(bl=bl,bz=-(bl-3), sh=inv ? .2 : 0, $die=true);
//%thread_insertM3(bl=10,bz=-7); //%thread_insertM3(bl=10,bz=-7);
} }
} }
zrot(-90)xrot(90)left(5) { zrot(-90)xrot(90)left(5) {
up(3+2) cyl(d1=7, d2=9,h=7, align=V_TOP); up(3+2) cyl(d1=7, d2=9,h=7, align=V_TOP);
thread_insertM3(bl=bl,bz=-(bl-3), $die=true); //thread_insertM3(bl=bl,bz=-(bl-3), $die=true);
m3s_clear(bl=bl,bz=-(bl-3), sh=inv ? .2 : 0, $die=true);
//%thread_insertM3(bl=10,bz=-7); //%thread_insertM3(bl=10,bz=-7);
} }
} }
@@ -212,7 +214,7 @@ module box_edge(ps=PROFILE_SIZE, l=10, orient=ORIENT_Z, jh = JOINER_H,jw = JOINE
zrot(-45)back(face_off*sqrt(2)-.01)pc4M10_clear(orient=ORIENT_Y,align=V_BACK); zrot(-45)back(face_off*sqrt(2)-.01)pc4M10_clear(orient=ORIENT_Y,align=V_BACK);
} }
} }
if (hm) right(face_off)back(face_off)zrot(45) color("gold") hinge_mount(); if (hm) right(face_off)back(face_off)zrot(45) color("gold") hinge_mount(inv=true);
if (iy) up(ioff) back(ps-wl/2)right(wt)yrot(-90) thread_insertM3(bl=5+wt, bz=-5, $die=true); if (iy) up(ioff) back(ps-wl/2)right(wt)yrot(-90) thread_insertM3(bl=5+wt, bz=-5, $die=true);
if (my) up(ioff) back(ps-wl/2)right(wt)yrot(-90) { if (my) up(ioff) back(ps-wl/2)right(wt)yrot(-90) {
back(5)down(2.4)cuboid([20.2,12,1.8], align=V_BOTTOM); back(5)down(2.4)cuboid([20.2,12,1.8], align=V_BOTTOM);
@@ -420,29 +422,35 @@ if (PART == "edge_side_foot_right") {
box_edge(l=ly, rbfoot=true, flx=true, wx=false, jup=true, jdown=true, gm=true, orient=ORIENT_Y); box_edge(l=ly, rbfoot=true, flx=true, wx=false, jup=true, jdown=true, gm=true, orient=ORIENT_Y);
} }
if (PART == "edge_side_top") { if (PART == "edge_side_top") {
if (Print_Ears) {
left(coff/2-2*psoff) back(ly/2)zrot(315)ear(thick=.2, dis=-2); left(coff/2-2*psoff) back(ly/2)zrot(315)ear(thick=.2, dis=-2);
right(coff/2-2*psoff) back(ly/2)zrot(225)ear(thick=.2, dis=-2); right(coff/2-2*psoff) back(ly/2)zrot(225)ear(thick=.2, dis=-2);
left(coff/2-2*psoff) fwd(ly/2)zrot(45)ear(thick=.2, dis=-2); left(coff/2-2*psoff) fwd(ly/2)zrot(45)ear(thick=.2, dis=-2);
right(coff/2-2*psoff) fwd(ly/2)zrot(135)ear(thick=.2, dis=-2); right(coff/2-2*psoff) fwd(ly/2)zrot(135)ear(thick=.2, dis=-2);
up((wt+wl)/sqrt(2))yrot(45)box_edge(l=ly, rbfoot=false, flx=false, wx=true, jup=true, jdown=true, cm=true, orient=ORIENT_Y); }
up((wt+wl)/sqrt(2))yrot(45)box_edge(l=ly, rbfoot=false, flx=false, wx=true, jup=true, jdown=true, cm=false, orient=ORIENT_Y);
} }
if (PART == "edge_top_front") { if (PART == "edge_top_front") {
//r = $t *90 - 45; //r = $t *90 - 45;
r=-45; r=-45;
if (Print_Ears) {
left(coff/2-2*psoff) back(lx/3/2)zrot(315)ear(thick=.2, dis=-2); left(coff/2-2*psoff) back(lx/3/2)zrot(315)ear(thick=.2, dis=-2);
right(coff/2-2*psoff) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2); right(coff/2-2*psoff) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2);
left(coff/2-2*psoff) fwd(lx/3/2)zrot(45)ear(thick=.2, dis=-2); left(coff/2-2*psoff) fwd(lx/3/2)zrot(45)ear(thick=.2, dis=-2);
right(coff/2-2*psoff) fwd(lx/3/2)zrot(135)ear(thick=.2, dis=-2); right(coff/2-2*psoff) fwd(lx/3/2)zrot(135)ear(thick=.2, dis=-2);
up((wt+wl)/sqrt(2)) yrot(45+90)zrot(90)box_edge(l=lx/3, rbfoot=false, hm=true, ht=r, hs=true, flx=false, iy=false, wx=true, jup=true, jdown=true, cm=true, orient=ORIENT_XNEG_180); }
up((wt+wl)/sqrt(2)) yrot(45+90)zrot(90)box_edge(l=lx/3, rbfoot=false, hm=true, hc=true, ht=r, hs=true, flx=false, iy=false, wx=true, jup=true, jdown=true, cm=false, orient=ORIENT_XNEG_180);
face_off = ((ps+psoff)/4); face_off = ((ps+psoff)/4);
//xrot(45)yrot(-90)right(face_off+7/2)zrot(180)hinge(); //xrot(45)yrot(-90)right(face_off+7/2)zrot(180)hinge();
} }
if (PART == "edge_top_back") { if (PART == "edge_top_back") {
if (Print_Ears) {
left(coff/2-2*psoff) back(lx/3/2)zrot(315)ear(thick=.2, dis=-2); left(coff/2-2*psoff) back(lx/3/2)zrot(315)ear(thick=.2, dis=-2);
right(coff/2-2*psoff) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2); right(coff/2-2*psoff) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2);
left(coff/2-2*psoff) fwd(lx/3/2)zrot(45)ear(thick=.2, dis=-2); left(coff/2-2*psoff) fwd(lx/3/2)zrot(45)ear(thick=.2, dis=-2);
right(coff/2-2*psoff) fwd(lx/3/2)zrot(135)ear(thick=.2, dis=-2); right(coff/2-2*psoff) fwd(lx/3/2)zrot(135)ear(thick=.2, dis=-2);
up((wt+wl)/sqrt(2)) yrot(45+90)zrot(90)box_edge(l=lx/3, rbfoot=false, hm=false, flx=false, iy=true, wx=true, jup=true, jdown=true, cm=true, orient=ORIENT_XNEG_180); }
up((wt+wl)/sqrt(2)) yrot(45+90)zrot(90)box_edge(l=lx/3, rbfoot=false, hm=true, flx=false, iy=true, wx=true, jup=true, jdown=true, cm=false, orient=ORIENT_XNEG_180);
} }
if (PART == "full_box") { if (PART == "full_box") {
up(lz/2+ps) { up(lz/2+ps) {
@@ -518,7 +526,7 @@ if (PART == "hinge") {
} }
if (PART == "rear_mount") { if (PART == "rear_mount") {
rearMount(); up(7) yrot(-90) rearMount();
} }
if (PART == "new_joiner") { if (PART == "new_joiner") {