PopufareHousingBottom.scad 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*
  2. * Copyright (c) 2019 Clementine Computing LLC.
  3. *
  4. * This file is part of PopuFare.
  5. *
  6. * PopuFare is free software: you can redistribute it and/or modify
  7. * it under the terms of the GNU Affero General Public License as published by
  8. * the Free Software Foundation, either version 3 of the License, or
  9. * (at your option) any later version.
  10. *
  11. * PopuFare is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. * GNU Affero General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU Affero General Public License
  17. * along with PopuFare. If not, see <https://www.gnu.org/licenses/>.
  18. *
  19. */
  20. include <PopufareHousingCommon.scad>
  21. module PopufareHousingBottomPlate() {
  22. w = POPUFARE_HOUSING_WIDTH;
  23. h = POPUFARE_HOUSING_DEPTH;
  24. fixture_dx = POPUFARE_FIXTURE_DX;
  25. fixture_dy = POPUFARE_FIXTURE_DY;
  26. fixture_bolt = 5.0/2.0;
  27. bx = POPUFARE_BRACKET_CX;
  28. br = POPUFARE_BRACKET_D/2.0;
  29. difference() {
  30. square([w,h], center=true);
  31. // generic cable access
  32. //
  33. circle(POPUFARE_GLAND_DIAMETER/2.0);
  34. // fixture bolts
  35. //
  36. translate([-fixture_dx/2.0, -fixture_dy/2.0]) circle(fixture_bolt);
  37. translate([ fixture_dx/2.0, -fixture_dy/2.0]) circle(fixture_bolt);
  38. translate([ fixture_dx/2.0, fixture_dy/2.0]) circle(fixture_bolt);
  39. translate([-fixture_dx/2.0, fixture_dy/2.0]) circle(fixture_bolt);
  40. // side bracket attachments
  41. //
  42. translate([ (w/2 - bx), (h/2-POPUFARE_BRACKET_DE)]) circle(br);
  43. translate([ (w/2 - bx),-(h/2-POPUFARE_BRACKET_DE)]) circle(br);
  44. translate([-(w/2 - bx), (h/2-POPUFARE_BRACKET_DE)]) circle(br);
  45. translate([-(w/2 - bx),-(h/2-POPUFARE_BRACKET_DE)]) circle(br);
  46. // front bracket attachments
  47. //
  48. translate([ (w/2 - POPUFARE_BRACKET_DE), -(h/2 - bx)]) circle(br);
  49. translate([-(w/2 - POPUFARE_BRACKET_DE), -(h/2 - bx)]) circle(br);
  50. // hinge assembly attachment
  51. //
  52. }
  53. }
  54. //PopufareHousingBottomPlate();