diff options
Diffstat (limited to 'case')
-rw-r--r-- | case/top.scad | 152 |
1 files changed, 78 insertions, 74 deletions
diff --git a/case/top.scad b/case/top.scad index bf622f5..eeb21eb 100644 --- a/case/top.scad +++ b/case/top.scad @@ -1,90 +1,94 @@ $fn = 72; -case_width_top = 317.5000; -case_width_bottom = 320.0000; -case_length_top = 150.0000; -case_length_bottom = 151.5000; - -wall_width = 2.5000; -wall_height = 17.2500; - -key_switch_width = 19.0500; -key_switch_length = 19.0500; -keyboard_width = key_switch_width * 13.5; -keyboard_length = key_switch_length * 5.0; -keyboard_x_offset = 12.2500; -keyboard_y_offset = 12.2500; - -accent_width = 1.0000; -accent_depth = 0.5; -accent_y_stride = (keyboard_length - accent_width) / 5.0; -accent_y_bottom = keyboard_y_offset; - -fin_width = 2.0000; -fin_gap_width = 2.0000; -fin_gap_length = 2.0000; -fin_gap_height = 12.0000; -fin_gap_count = 32; -fin_gap_x_first = keyboard_x_offset + keyboard_width - fin_gap_count * (fin_width + fin_gap_width); -fin_gap_y_offset = case_length_bottom - fin_gap_length; - -module fascia() { - linear_extrude(wall_width) - difference() { - square([case_width_bottom, case_length_bottom], false); - translate([keyboard_x_offset, keyboard_y_offset, 0]) - square([keyboard_width, keyboard_length], false); +module top_case() { + case_width_top = 317.5000; + case_width_bottom = 320.0000; + case_length_top = 150.0000; + case_length_bottom = 151.5000; + + wall_width = 2.5000; + wall_height = 17.2500; + + key_switch_width = 19.0500; + key_switch_length = 19.0500; + keyboard_width = key_switch_width * 13.5; + keyboard_length = key_switch_length * 5.0; + keyboard_x_offset = 12.2500; + keyboard_y_offset = 12.2500; + + accent_width = 1.0000; + accent_depth = 0.5; + accent_y_stride = (keyboard_length - accent_width) / 5.0; + accent_y_bottom = keyboard_y_offset; + + fin_width = 2.0000; + fin_gap_width = 2.0000; + fin_gap_length = 2.0000; + fin_gap_height = 12.0000; + fin_gap_count = 32; + fin_gap_x_first = keyboard_x_offset + keyboard_width - fin_gap_count * (fin_width + fin_gap_width); + fin_gap_y_offset = case_length_bottom - fin_gap_length; + + module fascia() { + linear_extrude(wall_width) + difference() { + square([case_width_bottom, case_length_bottom], false); + translate([keyboard_x_offset, keyboard_y_offset, 0]) + square([keyboard_width, keyboard_length], false); + } } -} -module fin_gaps() { - for (i = [0:fin_gap_count]) { - x = fin_gap_x_first + (i * (fin_width + fin_gap_width)); + module fin_gaps() { + for (i = [0:fin_gap_count]) { + x = fin_gap_x_first + (i * (fin_width + fin_gap_width)); - translate([x, fin_gap_y_offset, wall_height - fin_gap_height]) - cube([fin_gap_width, fin_gap_length, fin_gap_height], false); - } -} + translate([x, fin_gap_y_offset, wall_height - fin_gap_height]) + cube([fin_gap_width, fin_gap_length, fin_gap_height], false); + } + } -module accents() { - for (y = [accent_y_bottom: accent_y_stride: case_length_bottom]) { - /* Top */ - translate([0, y, wall_height - accent_depth]) - cube([case_width_bottom, accent_width, accent_depth], false); + module accents() { + for (y = [accent_y_bottom: accent_y_stride: case_length_bottom]) { + /* Top */ + translate([0, y, wall_height - accent_depth]) + cube([case_width_bottom, accent_width, accent_depth], false); - /* Right */ - translate([case_width_bottom - accent_depth, y, 0]) - cube([accent_depth, accent_width, wall_height], false); + /* Right */ + translate([case_width_bottom - accent_depth, y, 0]) + cube([accent_depth, accent_width, wall_height], false); - /* Left */ - translate([0, y, 0]) - cube([accent_depth, accent_width, wall_height], false); + /* Left */ + translate([0, y, 0]) + cube([accent_depth, accent_width, wall_height], false); + } } -} -module top_case() { - translate([0, 0, wall_height - wall_width]) - fascia(); + module body() { + translate([0, 0, wall_height - wall_width]) + fascia(); - /* Upper */ - translate([0, case_length_bottom - wall_width, 0]) - cube([case_width_bottom, - wall_width, - wall_height], false); + /* Upper */ + translate([0, case_length_bottom - wall_width, 0]) + cube([case_width_bottom, + wall_width, + wall_height], false); - /* Right */ - translate([case_width_bottom - wall_width, 0, 0]) - cube([wall_width, case_length_bottom, wall_height], false); + /* Right */ + translate([case_width_bottom - wall_width, 0, 0]) + cube([wall_width, case_length_bottom, wall_height], false); - /* Lower */ - cube([case_width_bottom, wall_width, wall_height], false); + /* Lower */ + cube([case_width_bottom, wall_width, wall_height], false); - /* Left */ - cube([wall_width, case_length_bottom, wall_height - wall_width], false); -} + /* Left */ + cube([wall_width, case_length_bottom, wall_height - wall_width], false); + } -difference() { - top_case(); - accents(); - fin_gaps(); + difference() { + body(); + accents(); + fin_gaps(); + } } + +top_case(); |