Skip to content

Instantly share code, notes, and snippets.

@eparadis
Created January 13, 2022 22:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eparadis/3d97649606c37653acfad1ade7a401b5 to your computer and use it in GitHub Desktop.
Save eparadis/3d97649606c37653acfad1ade7a401b5 to your computer and use it in GitHub Desktop.
desktop enclosure for five LAZ16-11 push buttons
module front_panel() {
translate([0,0,0])
cube([25*5, 30, 3]);
}
module button_hole() {
cylinder(80, d=12, center=true);
rear_clearance_depth = 10;
translate([0, 0, -2 - rear_clearance_depth])
cylinder(rear_clearance_depth*2, d=20, center=true);
}
module button_holes() {
x_spacing = 25;
x_offset = x_spacing / 2;
y_offset = 30/2;
for(i = [0:4]) {
translate([x_offset + x_spacing * i, y_offset, 0 ])
button_hole();
}
}
top_slope = 40;
difference() {
hull() {
translate([0, cos(90-top_slope)*3, 40])
rotate([top_slope, 0, 0])
front_panel();
scale([1, 1.5, 1])
front_panel();
}
translate([0, 0, 40])
rotate([top_slope,0,0,])
button_holes();
translate([4, 4, 4])
cube([25*5-2*4, 1.5*30, 40-3]);
}
@eparadis
Copy link
Author

This hasn't been printed yet. So fit and ergonomics might be off.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment