|
|
@@ -83,6 +83,7 @@ _cap_bore_w = case_d - 2*CAP_WALL; // bore Y width (fits recesse
|
|
|
_cap_bore_h = case_h + CAP_TOL; // bore Z height (CAP_TOL clearance on each Z face)
|
|
|
_cap_gap_w = (case_w - CAP_ENGAGE + CAP_PAD) - (win_x + ACT_W + _cham_xy); // gap between cap X- face and beveled bezel X+ end
|
|
|
_detent_x = (CAP_ENGAGE - CAP_PAD) / 2; // detent offset from cap X- face; same in cap local and case global offset
|
|
|
+_detent_z = (CAP_WALL + CAP_TOL + case_h) / 2; // Z center of recessed engagement face
|
|
|
// Magnetic strip recess geometry (centered on back face)
|
|
|
_lip_il = MAG_L + 2 * MAG_TOL;
|
|
|
_lip_iw = MAG_W + 2 * MAG_TOL;
|
|
|
@@ -144,7 +145,7 @@ module epd_case() {
|
|
|
// Detent dimples on Y± faces — accept cap nubs when fully seated
|
|
|
if (CAP_DETENT)
|
|
|
for (dy = [CAP_WALL + CAP_TOL, case_d - CAP_WALL - CAP_TOL])
|
|
|
- translate([case_w - CAP_ENGAGE + CAP_PAD + _detent_x, dy, case_h / 2])
|
|
|
+ translate([case_w - CAP_ENGAGE + CAP_PAD + _detent_x, dy, _detent_z])
|
|
|
sphere(r=DETENT_R);
|
|
|
|
|
|
// Cap wall recess — step in y- face at X+ end so cap sits flush
|
|
|
@@ -219,7 +220,7 @@ module cable_cap() {
|
|
|
// Detent nubs on Y± bore walls — snap into case dimples when fully seated
|
|
|
if (CAP_DETENT)
|
|
|
for (ny = [CAP_WALL, case_d - CAP_WALL])
|
|
|
- translate([_detent_x, ny, case_h / 2])
|
|
|
+ translate([_detent_x, ny, _detent_z])
|
|
|
sphere(r=DETENT_R);
|
|
|
|
|
|
// Chamfer tab: extends window bezel chamfer across the gap to the cap X- face
|