/*
* Copyright (c) 2019 Clementine Computing LLC.
*
* This file is part of PopuFare.
*
* PopuFare is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* PopuFare is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with PopuFare. If not, see .
*
*/
include
module PopufareHousingSideLeftPlate() {
w = POPUFARE_HOUSING_DEPTH;
h = POPUFARE_HOUSING_HEIGHT;
br = POPUFARE_BRACKET_D/2.0;
bx = POPUFARE_BRACKET_CX;
de = POPUFARE_BRACKET_DE;
dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
alen = dh*sqrt(2.0);
w_right = w - dh;
difference() {
square([w,h], center=true);
// chop off angle
//
translate([-w/2,-(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(45, [0,0,1]) square([4*w,4*w]);
// bottom bracket
//
translate([-(w/2-de), -(h/2-bx) ]) circle(br);
translate([ (w/2-de), -(h/2-bx) ]) circle(br);
// front bracket
//
translate( [ -(w/2-bx), -(h/2 - POPUFARE_FRONT_HEIGHT/2) ]) circle(br);
// front angle bracket
//
translate([-w/2, -(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(45, [0,0,1])
translate([de, -bx]) circle(br);
translate([-w/2, -(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(45, [0,0,1])
translate([alen - de, -bx]) circle(br);
// top bracket
//
translate([ (w/2 - (w_right/2.0)), (h/2 - bx) ]) circle(br);
// no back bracket
}
}
//PopufareHousingSideLeft();