psu_led_legend_battery_nub_l = 0.75;
psu_led_legend_battery_nub_w = 1.5;
+psu_led_legend_gap = 0.75;
+
// ----- calculated -----
+psu_innerend_led_x_midder = - psu_hole_pos[1] - psu_hole_dia/2;
+
module PsuLedBafflePlan(){
AtPsuMountCorner(0,0) {
translate([ (psu_led_chrg_min_x + psu_led_chrg_max_x)/2,
// One LED, PWR, near outlet USB pads
AtPsuMountCorner(0,1){
rectfromto([0,0],
- [psu_sz[0]/2 - psu_hole_pos[1] - psu_hole_dia/2,
+ [psu_sz[0]/2 + psu_innerend_led_x_midder,
psu_innerend_led_depth]);
}
}
module PsuLedLegendBattery(percent=50){
e = psu_led_legend_battery_edge;
- full_l = percent/100 * (psu_led_legend_battery_l - e*2);
+ empty_l = (100-percent)/100 * (psu_led_legend_battery_l - e*2);
difference(){
union(){
square([psu_led_legend_battery_l,
square([psu_led_legend_battery_nub_l*2,
psu_led_legend_battery_nub_w], center=true);
}
- translate([-(psu_led_legend_battery_l/2-e),
- -(psu_led_legend_battery_w/2-e)])
- square([full_l, psu_led_legend_battery_w - e*2]);
+ if (empty_l > 0)
+ translate([-(psu_led_legend_battery_l/2-e),
+ -(psu_led_legend_battery_w/2-e)])
+ square([empty_l, psu_led_legend_battery_w - e*2]);
}
}
module PsuLedLegendsPlan(){
- PsuLedLegendBattery();
+ translate(0.5 * [0, psu_sz[1]]
+ + [psu_led_legend_battery_l/2
+ + psu_innerend_led_x_midder
+ + psu_led_legend_gap,
+ -psu_innerend_led_depth/2]
+ )
+ PsuLedLegendBattery(0);
// mirror([1,0])
// text("\u2300\u23fb", font="Noto Regular");
}