| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- // 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 <PopufareHousingCommon.scad>
- module PopufareHousingFrontInsideAlignPlate() {
- w = POPUFARE_HOUSING_WIDTH;
- h = POPUFARE_FRONT_HEIGHT;
- bx = POPUFARE_BRACKET_CX;
- br = POPUFARE_BRACKET_D/2.0;
- de = POPUFARE_BRACKET_DE;
- frontlip = POPUFARE_HOUSING_FRONT_LIP_HEIGHT;
- mt = _MATERIAL_THICKNESS;
- lip = _MATERIAL_THICKNESS;
- lip_top = _MATERIAL_THICKNESS * sqrt(2.0);
- h_tot = h - lip_top + lip;
- fudge = 10;
- bracket_r = POPUFARE_BRACKET_WIDTH/2;
- difference() {
- union() {
- square([w,h], center=true);
- };
- // legacy housing fron lip
- //
- translate([0, -(h/2 - frontlip/2)]) square([w + 2*lip,frontlip], center=true);
- // get rid of ghost edges
- //
- translate([0, -(h/2 - frontlip/2)]) square([w + 2*lip + 1,frontlip], center=true);
- translate([0, -(h/2)]) square([w + 2*lip + 1,frontlip/2], center=true);
- // shave off top front panel to accomodate angle plate.
- // fudge to guard against stray geometry
- //
- translate([0, (h/2 - 0.4999*lip_top)]) square([2*w, lip_top + 0.15], center=true);
- // side plate bracket attachment
- //
- hull() {
- translate([ -(w/2 - bx), 0]) circle(bracket_r);
- translate([ -(w/2 - bx) - 2*de, 0]) circle(bracket_r);
- }
- hull() {
- translate([ (w/2 - bx), 0]) circle(bracket_r);
- translate([ (w/2 - bx) + 2*de, 0]) circle(bracket_r);
- }
- // bottom lip attachment
- //
- hull() {
- translate([ -(w/2 - 8*mt), -(h/2 - bx)]) circle(bracket_r);
- translate([ -(w/2 - 8*mt), -(h/2 - bx) - 2*de]) circle(bracket_r);
- }
- hull() {
- translate([ (w/2 - 8*mt), -(h/2 - bx)]) circle(bracket_r);
- translate([ (w/2 - 8*mt), -(h/2 - bx) - 2*de]) circle(bracket_r);
- }
- }
- }
- //PopufareHousingFrontInsideAlignPlate();
|