PopufareHousingFront.scad 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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 PopufareHousingFrontPlate() {
  10. dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
  11. lip = _MATERIAL_THICKNESS;
  12. sp_w = POPUFARE_HOUSING_WIDTH;
  13. sp_h = sqrt(2.0)*dh ;
  14. screen_w = POPUFARE_SCREEN_WIDTH;
  15. screen_h = POPUFARE_SCREEN_HEIGHT;
  16. screen_cx = 0;
  17. screen_cy = 0;
  18. screen_attach_dw = POPUFARE_SCREEN_SCREW_WIDTH;
  19. screen_attach_dh = POPUFARE_SCREEN_SCREW_HEIGHT;
  20. bend_thick = 1.5;
  21. fp_w = POPUFARE_HOUSING_WIDTH;
  22. fp_h = POPUFARE_FRONT_HEIGHT;
  23. notch_w = 5;
  24. notch_h = 5;
  25. difference() {
  26. union() {
  27. difference() {
  28. square([sp_w,sp_h], center=true);
  29. // screen window
  30. //
  31. translate([screen_cx, screen_cy]) square([screen_w, screen_h], center=true);
  32. // screw hole attachments
  33. //
  34. translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r);
  35. translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r);
  36. translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r);
  37. translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r);
  38. }
  39. translate([0,-(sp_h/2 + bend_thick/2)]) square([sp_w,bend_thick], center=true);
  40. translate([0,-(sp_h/2 + bend_thick + fp_h/2)]) square([fp_w, fp_h], center=true);
  41. }
  42. translate([0,-(sp_h/2 + bend_thick/2)])
  43. translate([-(sp_w/2-notch_w/2),0]) square([notch_w, notch_h],center=true);
  44. translate([0,-(sp_h/2 + bend_thick/2)])
  45. translate([ (sp_w/2-notch_w/2),0]) square([notch_w, notch_h],center=true);
  46. }
  47. }
  48. //PopufareHousingFrontPlate();