diff options
-rw-r--r-- | case/top.scad | 39 |
1 files changed, 33 insertions, 6 deletions
diff --git a/case/top.scad b/case/top.scad index 1455255..f8a88c8 100644 --- a/case/top.scad +++ b/case/top.scad @@ -221,19 +221,45 @@ module top_case(key_switch_sizes, pcb_screw_holes) { } } - module badge() { - module badge_text() { - text("XANTRONIX", font="Proxima Nova Semibold", size=2); + module logotype() { + module logotype_text(size) { + size_ratio = 1/5; + + text("XANTRONIX", font="Proxima Nova Semibold", size=size*size_ratio); translate([16, 0, 0]) - text("Z32", font="Proxima Nova Semibold", size=10); + text("Z32", font="Proxima Nova Semibold", size=size); } + + size = 10; translate([keyboard_x_offset, keyboard_y_offset + keyboard_pcb_length + keyboard_switch_length + accent_width, wall_height - accent_depth]) linear_extrude(accent_depth + eps) - badge_text(); + logotype_text(size); + } + + module sextile() { + module shape(width) { + ratio = 33 / 197; + margin = 0.5; + + for (angle = [0, -55, 55]) { + rotate([0, 0, angle]) + square([width + margin, ratio * width + 2*margin], true); + } + } + + width = 16.0; + offset_y = keyboard_y_offset + (keyboard_switch_width + accent_width) / 2; + offset_x = case_width_bottom - width; + + echo(offset_x, offset_y); + + translate([offset_x, offset_y, wall_height - accent_depth]) + linear_extrude(accent_depth + eps) + shape(width); } module body() { @@ -257,7 +283,8 @@ module top_case(key_switch_sizes, pcb_screw_holes) { difference() { body(); - badge(); + logotype(); + sextile(); accents(); vents(); } |