Initial import WIP

This commit is contained in:
sjc
2025-02-03 16:45:08 -05:00
commit a41550d4b2
2 changed files with 178 additions and 0 deletions

78
bracket.scad Normal file
View File

@@ -0,0 +1,78 @@
/* */
include <BOSL/constants.scad>
include <BOSL/shapes.scad>
include <BOSL/transforms.scad>
include <inserts/inserts.scad>
/* [Params] */
platfoot_x = 50.44;
platfoot_y = 25.42;
headpost_x = 38.08;
headpost_y = 38.08;
footboard_y=19;
footboard_z=130;
/* [Render Options] */
render_fs=.4;
render_fn=0;
render_fa=.4;
// Set Render Options
$fs= ($preview) ? $fs : render_fs;
$fn= ($preview) ? $fn : render_fn;
$fa= ($preview) ? $fa : render_fa;
module platfoot(x=platfoot_x, y=platfoot_y, z=260, align=V_FRONT) {
cuboid([x,y,z], align=align);
}
module footboard(x=100, y=footboard_y, z=footboard_z, align=V_BACK+V_BOTTOM) {
cuboid([x,y,z], align=align);
}
module headpost(x=headpost_x, y=headpost_y, z=260, align=V_FRONT) {
cuboid([x,y,z], align=align);
}
module screw_channel() {
back(19.2)cyl(d=6, h=10, orient=ORIENT_Y,align=V_FRONT);
back(9)cyl(d=3.5, h=100, orient=ORIENT_Y, align=V_FRONT);
}
module head_rear() {
difference() {
back(footboard_y) cuboid([platfoot_x+2*12,headpost_y+footboard_y+4,95], fillet=3, edges=EDGES_BACK+EDGES_Y_ALL, align=V_FRONT+V_TOP);
footboard();
headpost(y=2*headpost_y);
left(44)up(95/2)cuboid([50, 150,25]); // crossbar
// Screw Holes
right(40-10)up(95-10) screw_channel();
right(40-10)up(95/2) screw_channel();
right(40-10)up(10) screw_channel();
left(40-10)up(95-10) screw_channel();
left(40-10)up(10) screw_channel();
}
fwd(10)up(95/2)right(40)rotate([90,0,-45])rotate_extrude(angle=360) left(18) circle(d=10);
}
module head_front() {
difference() {
cuboid([platfoot_x+2*12,platfoot_y+footboard_y,95], fillet=3, edges=EDGES_FRONT+EDGES_Y_ALL, align=V_FRONT+V_TOP);
back(.01)platfoot();
// Screw Holes
right(40-10)up(95-10) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=30, bz=-15, drop=true, sh=0);
right(40-10)up(95/2) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=30, bz=-15, drop=true, sh=0);
right(40-10)up(10) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=30, bz=-15, drop=true, sh=0);
left(40-10)up(95-10) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=30, bz=-15, drop=true, sh=0);
left(40-10)up(10) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=30, bz=-15, drop=true, sh=0);
}
}
//fwd(headpost_y+4) head_front();
//head_rear();
//%footboard();
//%headpost();
//%fwd(headpost_y+4)platfoot();
fwd(2)head_front();
back(2) rotate([-90,0,0]) fwd(footboard_y) head_rear();