|
|
@@ -16,26 +16,26 @@ module lid() {
|
|
|
// Wide vertical face at x=WALL+FLANGE_W (inner), tip at bottom-wall-face — same
|
|
|
// (-FLANGE_W, -FLANGE_H) hypotenuse slope as base flanges so they mate when lid slides in.
|
|
|
color("#2C3863") {
|
|
|
- // Left (X-) flange — stops at Y+ locking flange inner face
|
|
|
+ // Left (X-) flange — extends into Y+ corner to meet locking flange
|
|
|
hull() {
|
|
|
translate([WALL + FLANGE_W - SLIDE_CLEAR - 0.01, 0, 0])
|
|
|
- cube([0.01, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H - SLIDE_CLEAR]);
|
|
|
+ cube([0.01, LID_Y_LEN - SLIDE_CLEAR, FLANGE_H - SLIDE_CLEAR]);
|
|
|
translate([WALL + SLIDE_CLEAR, 0, -0.005])
|
|
|
- cube([0.01, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, 0.01]);
|
|
|
+ cube([0.01, LID_Y_LEN - SLIDE_CLEAR, 0.01]);
|
|
|
}
|
|
|
- // Right (X+) flange — stops at Y+ locking flange inner face
|
|
|
+ // Right (X+) flange — extends into Y+ corner to meet locking flange
|
|
|
hull() {
|
|
|
translate([OUT_L - WALL - FLANGE_W + SLIDE_CLEAR, 0, 0])
|
|
|
- cube([0.01, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H - SLIDE_CLEAR]);
|
|
|
+ cube([0.01, LID_Y_LEN - SLIDE_CLEAR, FLANGE_H - SLIDE_CLEAR]);
|
|
|
translate([OUT_L - WALL - SLIDE_CLEAR - 0.01, 0, -0.005])
|
|
|
- cube([0.01, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, 0.01]);
|
|
|
+ cube([0.01, LID_Y_LEN - SLIDE_CLEAR, 0.01]);
|
|
|
}
|
|
|
|
|
|
// Interior ribs — 2 mm wide
|
|
|
translate([WALL + FLANGE_W - SLIDE_CLEAR, 0, 0])
|
|
|
- cube([2.0, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H]);
|
|
|
+ cube([2.0, LID_Y_LEN - SLIDE_CLEAR, FLANGE_H]);
|
|
|
translate([OUT_L - WALL - FLANGE_W + SLIDE_CLEAR - 2.0, 0, 0])
|
|
|
- cube([2.0, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H]);
|
|
|
+ cube([2.0, LID_Y_LEN - SLIDE_CLEAR, FLANGE_H]);
|
|
|
|
|
|
// Y+ locking flanges — angled wedge matching side-flange profile; split around FPC notch
|
|
|
for (seg = [
|