luniebox/hardware/case/square/luniebox-front-panel.scad

59 lines
1.4 KiB
OpenSCAD
Raw Normal View History

2022-03-13 09:28:58 +01:00
include<luniebox-helper.scad>
module luniebox_front_panel() {
grill_width=2;
difference() {
union() {
cube([length+depth,height+depth,depth]);
}
// speaker hole middle
translate([length/2,height/2,-depth / 2])
cylinder(d=103,h=depth*2);
}
for ( i = [grill_width*2 : grill_width*2 : 51.5] ) {
translate([length/2,height/2,depth/2])
difference () {
cylinder (h = depth, r=i+grill_width/2, center = true);
cylinder (h = depth*2, r=i-grill_width/2, center = true);
}
}
translate([length/2,height/2,0])
rotate([0,0,-45])
translate([-grill_width/2,grill_width*1.5,0])
cube([grill_width,51.5,depth]);
translate([length/2,height/2,0])
rotate([0,0,45])
translate([-grill_width/2,grill_width*1.5,0])
cube([grill_width,51.5,depth]);
translate([length/2,height/2,0])
rotate([0,0,-135])
translate([-grill_width/2,grill_width*1.5,0])
cube([grill_width,51.5,depth]);
translate([length/2,height/2,0])
rotate([0,0,135])
translate([-grill_width/2,grill_width*1.5,0])
cube([grill_width,51.5,depth]);
// screws front
translate([5,5+depth,depth])
screw(h=front_offset-depth);
translate([5,width-5+depth,depth])
screw(h=front_offset-depth);
translate([length-5,5+depth,depth])
screw(h=front_offset-depth);
translate([length-5,width-5+depth,depth])
screw(h=front_offset-depth);
}
luniebox_front_panel();