summaryrefslogtreecommitdiff
path: root/mech/pcb_case
diff options
context:
space:
mode:
authorxengineering <me@xengineering.eu>2024-01-01 23:41:18 +0100
committerxengineering <me@xengineering.eu>2024-01-02 20:26:15 +0100
commit285e100abf2ec0736cded36aba938098b1b7bb60 (patch)
treefaf488a51990b7e87ee0b2d168e1c3f5ce13051b /mech/pcb_case
parent84796898e32af3374f5e8ce22e686e04f6f6d11e (diff)
downloadsoundbox-285e100abf2ec0736cded36aba938098b1b7bb60.tar
soundbox-285e100abf2ec0736cded36aba938098b1b7bb60.tar.zst
soundbox-285e100abf2ec0736cded36aba938098b1b7bb60.zip
mech: pcb_case: Switch panel to PCB-based params
The whole case should move from case- to PCB-based parameters.
Diffstat (limited to 'mech/pcb_case')
-rw-r--r--mech/pcb_case/panel.scad25
-rw-r--r--mech/pcb_case/tolerance_tests.scad2
2 files changed, 18 insertions, 9 deletions
diff --git a/mech/pcb_case/panel.scad b/mech/pcb_case/panel.scad
index 2670c7a..421c1fb 100644
--- a/mech/pcb_case/panel.scad
+++ b/mech/pcb_case/panel.scad
@@ -1,18 +1,27 @@
+include <nut.scad>
+
use <rounded_cube.scad>
panel_dim_0_tol = 0.3;
panel_dim_1_2_tol = 0.45;
-module pcb_case_panel(dim, t) {
- rounded_cube([t,dim[1]-2*t,dim[2]-2*t], t);
+module pcb_case_panel(pcb_dim, margins, t) {
+ rounded_cube(
+ dim=[
+ t,
+ pcb_dim[1]+margins[1][0]+margins[1][1]+2*nut_h,
+ pcb_dim[2]+margins[2][0]+margins[2][1]
+ ],
+ radius=t
+ );
}
-module pcb_case_panel_back(dim, t) {
- translate([t,t,t])
- pcb_case_panel(dim, t);
+module pcb_case_panel_back(pcb_dim, margins, t) {
+ translate([t, t, t])
+ pcb_case_panel(pcb_dim, margins, t);
}
-module pcb_case_panel_front(dim, t) {
- translate([dim[0]-2*t,t,t])
- pcb_case_panel(dim, t);
+module pcb_case_panel_front(pcb_dim, margins, t) {
+ translate([pcb_dim[0]+margins[0][0]+margins[0][1]+2*t, t, t])
+ pcb_case_panel(pcb_dim, margins, t);
}
diff --git a/mech/pcb_case/tolerance_tests.scad b/mech/pcb_case/tolerance_tests.scad
index 536c00b..94911cd 100644
--- a/mech/pcb_case/tolerance_tests.scad
+++ b/mech/pcb_case/tolerance_tests.scad
@@ -83,4 +83,4 @@ bolt_drilling();
translate([0, 20, 0]) nut_drilling();
translate([0, 70, 0]) panel_thickness();
translate([0, 50, 0]) panel_width_height();
-translate([0, 85, 0]) rotate([0, -90, 0]) pcb_case_panel([t, 6*t, 6*t], t);
+translate([0, 85, 0]) rotate([0, -90, 0]) rounded_cube([t, 6*t, 6*t], t);