Added Foot corners

Added foot corners
This commit is contained in:
sjc
2026-05-13 12:46:10 -04:00
parent 9c71a14cbf
commit 9cb868e599

View File

@@ -18,7 +18,7 @@ LegOff = 19;
LegGap=4; LegGap=4;
/* [Render Options] */ /* [Render Options] */
part=""; // [both, back, head_corner_rear, head_corner_front, foot_cross_front, foot_cross_rear, head_cross_front, head_cross_rear ] part=""; // [both, back, head_corner_rear, head_corner_front, foot_corner_front, foot_corner_rear, head_cross_front, foot_cross_front, foot_cross_rear ]
model = "none"; // ["none", "corner_leg", "center_leg"] model = "none"; // ["none", "corner_leg", "center_leg"]
plate = false; plate = false;
mate = false; mate = false;
@@ -81,6 +81,41 @@ module head_front() {
} }
} }
module foot_front() {
blockz= footcrossyz + 2*10; // 95;
difference() {
right(19/2-4)cuboid([platfoot_x+16+LegOff,platfoot_y+footboard_y,blockz], fillet=3, edges=EDGES_FRONT+EDGES_Y_ALL, align=V_FRONT+V_TOP);
back(.01)platfoot();
// Screw Holes
rx= 5 + headpost_x/2;
bz = -40;
bl = 58 - bz;
up(blockz/2)zspread(n=3, l=blockz-10)
right(rx+LegOff) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=bl, bz=bz, drop=true, sh=0);
up(blockz/2)left(30) zspread(n=2, l=blockz-10) rotate([-90,0,0]) rotate([0,0,180]) m4s_clear(bl=bl, bz=bz, drop=true, sh=0);
}
}
module foot_rear() {
z = footcrossyz + 2*10;
difference() {
union() {
left(19/2+4)back(footboard_y) cuboid([platfoot_x+16+19,headpost_y+footboard_y, z], fillet=3, edges=EDGES_BACK+EDGES_Y_ALL, align=V_FRONT+V_TOP);
fwd(10)up(z/2)right(40-4)rotate([90,0,-45])rotate_extrude(angle=360) left(18) circle(d=10);
}
footboard();
headpost(y=2*headpost_y);
left(44)up(z/2)cuboid([50, 150, footcrossyz]); // crossbar
// Screw Holes
rx = 5 + headpost_x/2;
right(rx)up(z-5) screw_channel();
right(rx)up(z/2) screw_channel();
right(rx)up(5) screw_channel();
left(50)up(z-5) screw_channel();
left(50)up(5) screw_channel();
}
}
module head_cross_rear() { module head_cross_rear() {
difference() { difference() {
cuboid([platmid_x+20, 25+10, 42], fillet=3,align=V_BACK); cuboid([platmid_x+20, 25+10, 42], fillet=3,align=V_BACK);
@@ -152,6 +187,15 @@ if (part == "head_cross_front") {
rot = plate ? -90 : 0; rot = plate ? -90 : 0;
xrot(rot) xrot(rot)
head_rear(); head_rear();
} else if (part == "foot_corner_front") {
rot = plate ? -90 : 0;
xrot(rot)
foot_front();
} else if (part == "foot_corner_rear") {
rot = plate ? -90 : 0;
xrot(rot)
foot_rear();
if (mate) { fwd(headpost_x) left(19) %foot_front(); }
} else if (part == "both") { } else if (part == "both") {
fwd(platfoot_y+LegGap+13) left(LegOff)head_front(); fwd(platfoot_y+LegGap+13) left(LegOff)head_front();
head_rear(); head_rear();