PopufareHousingFrontAngle.scad 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. // License: CC0
  2. //
  3. // To the extent possible under law, Clementine Computing LLC has waived
  4. // all copyright and related or neighboring rights to this file.
  5. //
  6. // This work is published from: United States.
  7. //
  8. include <PopufareHousingCommon.scad>
  9. module PopufareHousingFrontAnglePlate() {
  10. dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
  11. lip = _MATERIAL_THICKNESS;
  12. w = POPUFARE_HOUSING_WIDTH;
  13. h = sqrt(2.0)*dh ;
  14. bx = POPUFARE_BRACKET_CX;
  15. br = POPUFARE_BRACKET_D/2.0;
  16. de = POPUFARE_BRACKET_DE;
  17. des = POPUFARE_BRACKET_DE_MEDIUM;
  18. lip = _MATERIAL_THICKNESS;
  19. screen_w = POPUFARE_SCREEN_WIDTH;
  20. screen_h = POPUFARE_SCREEN_HEIGHT;
  21. screen_cx = 0;
  22. screen_cy = 0;
  23. screen_attach_dw = POPUFARE_SCREEN_SCREW_WIDTH;
  24. screen_attach_dh = POPUFARE_SCREEN_SCREW_HEIGHT;
  25. bottom_extra = 4.25;
  26. top_extra = 1.25;
  27. left_extra = 2.25;
  28. right_extra = 2.25;
  29. difference() {
  30. union() {
  31. square([w + 2*lip,h + 4*lip], center=true);
  32. }
  33. // attach to side plate brackets
  34. //
  35. translate([ -(w/2 - bx), -(h/2-des) ]) circle(br);
  36. translate([ -(w/2 - bx), (h/2-des) ]) circle(br);
  37. translate([ (w/2 - bx), -(h/2-des) ]) circle(br);
  38. translate([ (w/2 - bx), (h/2-des) ]) circle(br);
  39. // screen center
  40. //
  41. translate([screen_cx, screen_cy]) square([screen_w, screen_h], center=true);
  42. translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r);
  43. translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r);
  44. translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r);
  45. translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r);
  46. }
  47. }
  48. //PopufareHousingFrontAnglePlate();