angle_connector.scad 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. include <../config/angle_connector.scad>
  2. module angle_connector_base_shape() {
  3. rounding = angle_rounding;
  4. width = angle_connector_depth;
  5. height = angle_connector_height;
  6. margin = angle_connector_thickness;
  7. module shape(width, height) {
  8. move_x = width / 2;
  9. move_y = height / 2;
  10. hull() {
  11. translate([-move_x + rounding, move_y - rounding]) {
  12. circle(r = rounding);
  13. }
  14. translate([-move_x + rounding, -move_y + rounding]) {
  15. circle(r = rounding);
  16. }
  17. translate([move_x - rounding, move_y - rounding]) {
  18. circle(r = rounding);
  19. }
  20. }
  21. }
  22. difference() {
  23. shape(width, height);
  24. x = 20 * sqrt(2);
  25. translate([-x / 2, x / 2]) {
  26. shape(width - margin * 2 - x, height - margin * 2 - x);
  27. }
  28. }
  29. }
  30. module angle_connector_base_object() {
  31. linear_extrude(height = angle_connector_width, center = true) {
  32. angle_connector_base_shape();
  33. }
  34. }
  35. module angle_connector_object() {
  36. angle_connector_base_object();
  37. }