summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--case/top.scad32
1 files changed, 18 insertions, 14 deletions
diff --git a/case/top.scad b/case/top.scad
index eb19477..1e4aa45 100644
--- a/case/top.scad
+++ b/case/top.scad
@@ -2,19 +2,6 @@ $fn = 72;
include <keyboard.scad>
-/*
- * Top screw holes are 15mm from top of case
- * Side screws are 6.5mm from side of case
- * Top middle screw post is 29.3mm long
- * Other screw posts are 12mm long
- * Screw post outer diameter 6.25mm
- * Screw post inner diameter 3mm
- * Horizontal ridge interval: 55.5mm
- * Vertical ridge interval: 31.3mm
- * Ridge thickness: 1.25mm
- * First horizontal ridge: Starts at keyboard X offset
- */
-
module top_case(key_switch_sizes, pcb_screw_holes) {
case_width_top = 317.5000;
case_width_bottom = 320.0000;
@@ -45,6 +32,13 @@ module top_case(key_switch_sizes, pcb_screw_holes) {
support_width = 1.2500;
+ screw_post_diameter_inner = 3.00;
+ screw_post_diameter_outer = 6.25;
+ screw_post_corner_height = 12.00;
+ screw_post_middle_height = 29.30;
+ screw_post_upper_y_offset = case_length_bottom - wall_width - 15.00;
+ screw_post_x_offset = wall_width + 6.50;
+
module fascia() {
linear_extrude(wall_width)
difference() {
@@ -79,6 +73,16 @@ module top_case(key_switch_sizes, pcb_screw_holes) {
}
}
+ module screw_post(h) {
+ diameter_inner = 3.00;
+ diameter_outer = 6.25;
+
+ difference() {
+ cylinder(h, d=diameter_inner);
+ cylinder(h, d=diameter_outer);
+ }
+ }
+
module support(dimensions, width) {
length = dimensions[0];
height = dimensions[1];
@@ -179,7 +183,7 @@ module top_case(key_switch_sizes, pcb_screw_holes) {
wall_height - wall_width])
rotate([0, 0, -90])
support([right_support_length, keyboard_switch_height], support_width);
-
+
translate([left_support_x_offset,
support_y_offset + y - wall_width + support_width,
wall_height - wall_width])