diff --git a/src/components.scad b/src/components.scad index 1026cce..4b5f89b 100644 --- a/src/components.scad +++ b/src/components.scad @@ -538,6 +538,13 @@ module ergo_wasd_five_30mm() { translate([0, 0, 0]) sega_2p_nine_thumb_button(); } +module ergo_wasd_seven_30mm() { + translate([-51.75, 65.5, 0]) rotate([0, 0, 10]) { + wasd_six_30mm(); + } + translate([0, 0, 0]) sega_2p_nine_thumb_button(); +} + module ergo_nine_30mm() { translate([-51.75, 65.5, 0]) rotate([0, 0, 10]) { wasd_eight_30mm(); diff --git a/src/plates/decorative-plate-ergo-nine-30mm-plate.scad b/src/plates/decorative-plate-ergo-nine-30mm-plate.scad new file mode 100644 index 0000000..0095d95 --- /dev/null +++ b/src/plates/decorative-plate-ergo-nine-30mm-plate.scad @@ -0,0 +1,24 @@ +/* Decorative plate for ergo action buttons. + * + * SPDX-FileCopyrightText: © 2025 Brian S. Stephan + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +include +decorative_radius_scale = 1.5; +include + +module ergo_nine_30mm_plate_decorative_plate() { + difference() { + hull() difference() { + // get a 2mm slice of the decorative button cylinders + translate([0, 0, -50]) ergo_nine_30mm(); + translate([0, 0, -100]) cube([500, 500, 198], center=true); + translate([0, 0, 100]) cube([500, 500, 198], center=true); + } + // cut out the normal holes + translate([0, 0, -1]) ergo_nine_30mm(); + } +} + +ergo_nine_30mm_plate_decorative_plate(); diff --git a/src/plates/decorative-plate-ergo-wasd-five-30mm-plate.scad b/src/plates/decorative-plate-ergo-wasd-five-30mm-plate.scad new file mode 100644 index 0000000..588583b --- /dev/null +++ b/src/plates/decorative-plate-ergo-wasd-five-30mm-plate.scad @@ -0,0 +1,24 @@ +/* Decorative plate for ergo WASD directional buttons. + * + * SPDX-FileCopyrightText: © 2025 Brian S. Stephan + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +include +decorative_radius_scale = 1.5; +include + +module ergo_wasd_five_30mm_plate_decorative_plate() { + difference() { + hull() difference() { + // get a 2mm slice of the decorative button cylinders + translate([0, 0, -50]) ergo_wasd_seven_30mm(); + translate([0, 0, -100]) cube([500, 500, 198], center=true); + translate([0, 0, 100]) cube([500, 500, 198], center=true); + } + // cut out the normal holes + translate([0, 0, -1]) ergo_wasd_five_30mm(); + } +} + +ergo_wasd_five_30mm_plate_decorative_plate();