Finalized Box Parts
Printing V2
This commit is contained in:
@@ -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
|
||||
|
||||
Finalized and printing parts.
|
||||
Snaps could be better.
|
||||
|
||||
TODO:
|
||||
- Cleanup
|
||||
- Handles
|
||||
|
||||
48
box.scad
48
box.scad
@@ -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) {
|
||||
zrot(-90)xrot(90)right(5) {
|
||||
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);
|
||||
}
|
||||
}
|
||||
zrot(-90)xrot(90)left(5) {
|
||||
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);
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
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 (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);
|
||||
@@ -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);
|
||||
}
|
||||
if (PART == "edge_side_top") {
|
||||
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);
|
||||
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);
|
||||
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);
|
||||
if (Print_Ears) {
|
||||
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);
|
||||
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);
|
||||
}
|
||||
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") {
|
||||
//r = $t *90 - 45;
|
||||
r=-45;
|
||||
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);
|
||||
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);
|
||||
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);
|
||||
if (Print_Ears) {
|
||||
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);
|
||||
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);
|
||||
}
|
||||
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);
|
||||
//xrot(45)yrot(-90)right(face_off+7/2)zrot(180)hinge();
|
||||
}
|
||||
if (PART == "edge_top_back") {
|
||||
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);
|
||||
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);
|
||||
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);
|
||||
if (Print_Ears) {
|
||||
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);
|
||||
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);
|
||||
}
|
||||
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") {
|
||||
up(lz/2+ps) {
|
||||
@@ -518,7 +526,7 @@ if (PART == "hinge") {
|
||||
}
|
||||
|
||||
if (PART == "rear_mount") {
|
||||
rearMount();
|
||||
up(7) yrot(-90) rearMount();
|
||||
}
|
||||
|
||||
if (PART == "new_joiner") {
|
||||
|
||||
Reference in New Issue
Block a user