|
@@ -1,5 +1,5 @@
|
|
|
// Sliding lid for EE04 case — integrates epd_case as ceiling
|
|
// Sliding lid for EE04 case — integrates epd_case as ceiling
|
|
|
-// z=0 = bottom of flanges; z=FLANGE_H = ceiling underside / epd_case backplate bottom
|
|
|
|
|
|
|
+// z=0 = bottom of flanges; ceiling at z=LID_T (epd_case backplate) or z=FLANGE_H (flat test plate)
|
|
|
include <params.scad>
|
|
include <params.scad>
|
|
|
use <epd_case.scad>
|
|
use <epd_case.scad>
|
|
|
use <GDEY0583T81.scad>
|
|
use <GDEY0583T81.scad>
|
|
@@ -106,11 +106,12 @@ module lid() {
|
|
|
color("#004B49")
|
|
color("#004B49")
|
|
|
difference() {
|
|
difference() {
|
|
|
union() {
|
|
union() {
|
|
|
- // Flat ceiling plate — always rendered
|
|
|
|
|
- translate([0, -WALL, FLANGE_H])
|
|
|
|
|
- rounded_box(OUT_L, OUT_W, LID_T, CORNER_R);
|
|
|
|
|
|
|
+ if (!EPD_IS_LID)
|
|
|
|
|
+ // Flat ceiling plate for test-fit lid (no epd_case)
|
|
|
|
|
+ translate([0, -WALL, FLANGE_H])
|
|
|
|
|
+ rounded_box(OUT_L, OUT_W, LID_T, CORNER_R);
|
|
|
if (EPD_IS_LID)
|
|
if (EPD_IS_LID)
|
|
|
- translate([OUT_L/2 - epd_case_w/2, OUT_W - WALL, FLANGE_H + LID_T])
|
|
|
|
|
|
|
+ translate([OUT_L/2 - epd_case_w/2, OUT_W - WALL, LID_T])
|
|
|
rotate([-EPD_ANGLE, 0, 0])
|
|
rotate([-EPD_ANGLE, 0, 0])
|
|
|
translate([0, -epd_case_d, 0])
|
|
translate([0, -epd_case_d, 0])
|
|
|
epd_case();
|
|
epd_case();
|
|
@@ -125,16 +126,17 @@ module lid() {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // FPC cable slot — from Y+ face of U-rib bottom bar, FPC_SLOT_W toward Y+
|
|
|
|
|
- translate([PCB_OX + FPC_CX - FPC_NOTCH_W/2,
|
|
|
|
|
- LID_Y_LEN - 3 - FPC_U_DEPTH + FPC_U_T,
|
|
|
|
|
- FLANGE_H - 0.1])
|
|
|
|
|
- cube([FPC_NOTCH_W, FPC_SLOT_W, LID_T + 0.2]);
|
|
|
|
|
|
|
+ // FPC cable slot — through flat ceiling plate (test-fit lid only; EPD_IS_LID uses epd_case slot)
|
|
|
|
|
+ if (!EPD_IS_LID)
|
|
|
|
|
+ translate([PCB_OX + FPC_CX - FPC_NOTCH_W/2,
|
|
|
|
|
+ LID_Y_LEN - 3 - FPC_U_DEPTH + FPC_U_T,
|
|
|
|
|
+ FLANGE_H - 0.1])
|
|
|
|
|
+ cube([FPC_NOTCH_W, FPC_SLOT_W, LID_T + 0.2]);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// Display mockup — seated inside epd_case, preview only
|
|
// Display mockup — seated inside epd_case, preview only
|
|
|
if ($preview && EPD_IS_LID && SHOW_DISP)
|
|
if ($preview && EPD_IS_LID && SHOW_DISP)
|
|
|
- translate([OUT_L/2 - epd_case_w/2, OUT_W - WALL, FLANGE_H + LID_T])
|
|
|
|
|
|
|
+ translate([OUT_L/2 - epd_case_w/2, OUT_W - WALL, LID_T])
|
|
|
rotate([-EPD_ANGLE, 0, 0])
|
|
rotate([-EPD_ANGLE, 0, 0])
|
|
|
translate([WALL + TOL, -epd_case_d + BEZEL_Y, WALL])
|
|
translate([WALL + TOL, -epd_case_d + BEZEL_Y, WALL])
|
|
|
GDEY0583T81(fpc_bend_start=0, fpc_bend_r=FPC_BEND_R, fpc_post_clip=2);
|
|
GDEY0583T81(fpc_bend_start=0, fpc_bend_r=FPC_BEND_R, fpc_post_clip=2);
|