// 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 PopufareHousingTopPlate() { dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT; w = POPUFARE_HOUSING_WIDTH; h = POPUFARE_HOUSING_DEPTH-dh; bx = POPUFARE_BRACKET_CX; br = POPUFARE_BRACKET_D/2.0; de = POPUFARE_BRACKET_DE; des = POPUFARE_BRACKET_DE_SHORT; lip = _MATERIAL_THICKNESS; hinge_dw = POPUFARE_HINGE_TOP_HOLE_WIDTH; hinge_r = POPUFARE_HINGE_D/2; hinge_de = POPUFARE_HINGE_TOP_HOLE_DE; difference() { union() { square([w,h], center=true); }; // shave off top front panel to accomodate angle plate // translate([0, -(h/2 - lip)]) square([w, lip+0.25], center=true); // attach to back plate bracket // //translate([ -(w/2 - de), (h/2-bx) ]) circle(br); //translate([ (w/2 - de), (h/2-bx) ]) circle(br); // side plate bracket attachment // translate([ -(w/2 - bx), (h/2-des)]) circle(br); translate([ -(w/2 - bx),-(h/2-des)]) circle(br); translate([ (w/2 - bx), (h/2-des)]) circle(br); translate([ (w/2 - bx),-(h/2-des)]) circle(br); // hinge attachment // translate([ -hinge_dw/2, h/2 - hinge_de ]) circle(hinge_r); translate([ hinge_dw/2, h/2 - hinge_de ]) circle(hinge_r); } } //PopufareHousingTopPlate();