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
|
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
|
||||||
|
|||||||
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) {
|
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") {
|
||||||
left(coff/2-2*psoff) back(ly/2)zrot(315)ear(thick=.2, dis=-2);
|
if (Print_Ears) {
|
||||||
right(coff/2-2*psoff) back(ly/2)zrot(225)ear(thick=.2, dis=-2);
|
left(coff/2-2*psoff) back(ly/2)zrot(315)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) back(ly/2)zrot(225)ear(thick=.2, dis=-2);
|
||||||
right(coff/2-2*psoff) fwd(ly/2)zrot(135)ear(thick=.2, dis=-2);
|
left(coff/2-2*psoff) fwd(ly/2)zrot(45)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);
|
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") {
|
if (PART == "edge_top_front") {
|
||||||
//r = $t *90 - 45;
|
//r = $t *90 - 45;
|
||||||
r=-45;
|
r=-45;
|
||||||
left(coff/2-2*psoff) back(lx/3/2)zrot(315)ear(thick=.2, dis=-2);
|
if (Print_Ears) {
|
||||||
right(coff/2-2*psoff) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2);
|
left(coff/2-2*psoff) back(lx/3/2)zrot(315)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) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2);
|
||||||
right(coff/2-2*psoff) fwd(lx/3/2)zrot(135)ear(thick=.2, dis=-2);
|
left(coff/2-2*psoff) fwd(lx/3/2)zrot(45)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);
|
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);
|
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") {
|
||||||
left(coff/2-2*psoff) back(lx/3/2)zrot(315)ear(thick=.2, dis=-2);
|
if (Print_Ears) {
|
||||||
right(coff/2-2*psoff) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2);
|
left(coff/2-2*psoff) back(lx/3/2)zrot(315)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) back(lx/3/2)zrot(225)ear(thick=.2, dis=-2);
|
||||||
right(coff/2-2*psoff) fwd(lx/3/2)zrot(135)ear(thick=.2, dis=-2);
|
left(coff/2-2*psoff) fwd(lx/3/2)zrot(45)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);
|
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") {
|
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") {
|
||||||
|
|||||||
Reference in New Issue
Block a user