diff options
Diffstat (limited to 'case')
-rw-r--r-- | case/top.scad | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/case/top.scad b/case/top.scad index bf85eaf..30fffe9 100644 --- a/case/top.scad +++ b/case/top.scad @@ -1,6 +1,7 @@ $fn = 72; -key_switch_sizes = [ +key_switch_height = 11.10; +key_switch_sizes = [ [0.5, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.5], [1.25, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.25], @@ -8,6 +9,7 @@ key_switch_sizes = [ [1.0, 1.25, 1.25, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0] ]; +pcb_height = 1.600; pcb_screw_holes = [ [ 4.7625, 85.7250], [ 66.6750, 85.7250], @@ -21,6 +23,7 @@ pcb_screw_holes = [ [238.1250, 9.5250] ]; + module top_case(key_switch_sizes, pcb_screw_holes) { case_width_top = 317.5000; case_width_bottom = 320.0000; @@ -144,6 +147,24 @@ module top_case(key_switch_sizes, pcb_screw_holes) { } } + module walls() { + /* Upper */ + translate([-wall_width, keyboard_length, 0]) + cube([keyboard_width + 2 * wall_width, wall_width, key_switch_height], false); + + /* Right */ + translate([keyboard_width, -wall_width, 0]) + cube([wall_width, keyboard_length + 2 * wall_width, key_switch_height], false); + + /* Lower */ + translate([-wall_width, -wall_width, 0]) + cube([keyboard_width + 2 * wall_width, wall_width, key_switch_height], false); + + /* Left */ + translate([-wall_width, -wall_width, 0]) + cube([wall_width, keyboard_length + 2 * wall_width, key_switch_height], false); + } + module body() { rows = len(key_switch_sizes); @@ -170,6 +191,8 @@ module top_case(key_switch_sizes, pcb_screw_holes) { body(); screw_holes(); } + + walls(); } difference() { @@ -178,7 +201,9 @@ module top_case(key_switch_sizes, pcb_screw_holes) { fin_gaps(); } - translate([0, 0, 20]) + keyboard_deck_z_offset = wall_height - key_switch_height; + + translate([keyboard_x_offset, keyboard_y_offset, keyboard_deck_z_offset]) keyboard_deck(); } |