// License: CC0 // // To the extent possible under law, Clementine Computing LLC has waived // all copyright and related or neighboring rights to this file. // // This work is published from: United States. // include module PopufareHousingFrontPlate() { dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT; lip = _MATERIAL_THICKNESS; sp_w = POPUFARE_HOUSING_WIDTH; sp_h = sqrt(2.0)*dh ; screen_w = POPUFARE_SCREEN_WIDTH; screen_h = POPUFARE_SCREEN_HEIGHT; screen_cx = 0; screen_cy = 0; screen_attach_dw = POPUFARE_SCREEN_SCREW_WIDTH; screen_attach_dh = POPUFARE_SCREEN_SCREW_HEIGHT; bend_thick = 1.5; fp_w = POPUFARE_HOUSING_WIDTH; fp_h = POPUFARE_FRONT_HEIGHT; notch_w = 5; notch_h = 5; difference() { union() { difference() { square([sp_w,sp_h], center=true); // screen window // translate([screen_cx, screen_cy]) square([screen_w, screen_h], center=true); // screw hole attachments // translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r); translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r); translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r); translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r); } translate([0,-(sp_h/2 + bend_thick/2)]) square([sp_w,bend_thick], center=true); translate([0,-(sp_h/2 + bend_thick + fp_h/2)]) square([fp_w, fp_h], center=true); } translate([0,-(sp_h/2 + bend_thick/2)]) translate([-(sp_w/2-notch_w/2),0]) square([notch_w, notch_h],center=true); translate([0,-(sp_h/2 + bend_thick/2)]) translate([ (sp_w/2-notch_w/2),0]) square([notch_w, notch_h],center=true); } } //PopufareHousingFrontPlate();