瀏覽代碼

Create connector for wood.

cixo 1 年之前
父節點
當前提交
19146d6037
共有 100 個文件被更改,包括 130 次插入0 次删除
  1. 70 0
      assets/connector.scad
  2. 47 0
      assets/hinge.scad
  3. 8 0
      config/connector.scad
  4. 5 0
      config/hinge.scad
  5. 二進制
      current-output/20241024_160001.jpg
  6. 二進制
      current-output/20241024_160020.jpg
  7. 二進制
      current-output/20241024_160022.jpg
  8. 二進制
      current-output/20241024_160025.jpg
  9. 二進制
      current-output/20241024_160029.jpg
  10. 二進制
      current-output/20241024_160031.jpg
  11. 二進制
      current-output/20241024_160034.jpg
  12. 二進制
      current-output/20241024_160037.jpg
  13. 二進制
      current-output/20241024_160040.jpg
  14. 二進制
      current-output/20241024_160042.jpg
  15. 二進制
      current-output/20241024_160048.jpg
  16. 二進制
      current-output/20241024_160050.jpg
  17. 二進制
      current-output/20241024_160051.jpg
  18. 二進制
      current-output/20241024_160132.jpg
  19. 二進制
      current-output/20241024_160142.jpg
  20. 二進制
      current-output/20241024_160145.jpg
  21. 二進制
      current-output/20241024_160152.jpg
  22. 二進制
      current-output/20241024_160207.jpg
  23. 二進制
      current-output/20241024_160209.jpg
  24. 二進制
      current-output/20241024_160212.jpg
  25. 二進制
      current-output/20241024_160213.jpg
  26. 二進制
      current-output/20241024_160214.jpg
  27. 二進制
      current-output/20241024_160220.jpg
  28. 二進制
      current-output/20241024_160224.jpg
  29. 二進制
      current-output/20241024_160225.jpg
  30. 二進制
      current-output/20241024_160326.jpg
  31. 二進制
      current-output/20241024_160332.jpg
  32. 二進制
      current-output/20241024_160339.jpg
  33. 二進制
      current-output/20241024_160344.jpg
  34. 二進制
      current-output/20241024_160345.jpg
  35. 二進制
      current-output/20241024_160348.jpg
  36. 二進制
      current-output/20241024_160350.jpg
  37. 二進制
      current-output/20241024_160351.jpg
  38. 二進制
      current-output/20241024_160401.jpg
  39. 二進制
      current-output/20241024_160425.jpg
  40. 二進制
      current-output/20241024_160426.jpg
  41. 二進制
      current-output/20241024_160437.jpg
  42. 二進制
      current-output/20241024_160438.jpg
  43. 二進制
      current-output/20241024_160441.jpg
  44. 二進制
      current-output/20241024_160444.jpg
  45. 二進制
      current-output/20241024_160445.jpg
  46. 二進制
      current-output/20241024_160447.jpg
  47. 二進制
      current-output/20241024_160447_1.jpg
  48. 二進制
      current-output/20241024_160451.jpg
  49. 二進制
      current-output/20241024_160452.jpg
  50. 二進制
      current-output/20241024_160454.jpg
  51. 二進制
      current-output/20241024_160458.jpg
  52. 二進制
      current-output/20241024_160459.jpg
  53. 二進制
      current-output/20241024_160502.jpg
  54. 二進制
      current-output/20241024_160510.jpg
  55. 二進制
      current-output/20241024_160540.jpg
  56. 二進制
      current-output/20241024_160542.jpg
  57. 二進制
      current-output/20241024_160544.jpg
  58. 二進制
      current-output/20241024_160547.jpg
  59. 二進制
      current-output/20241024_160548.jpg
  60. 二進制
      current-output/20241024_160552.jpg
  61. 二進制
      current-output/20241024_160553.jpg
  62. 二進制
      current-output/20241024_160555.jpg
  63. 二進制
      current-output/20241024_160557.jpg
  64. 二進制
      current-output/20241024_160558.jpg
  65. 二進制
      current-output/20241024_160606.jpg
  66. 二進制
      current-output/20241024_160607.jpg
  67. 二進制
      current-output/20241024_160608.jpg
  68. 二進制
      current-output/20241024_160614.jpg
  69. 二進制
      current-output/20241024_160615.jpg
  70. 二進制
      current-output/20241024_160620.jpg
  71. 二進制
      current-output/20241024_160620_1.jpg
  72. 二進制
      current-output/20241024_160900.jpg
  73. 二進制
      current-output/20241024_160912.jpg
  74. 二進制
      current-output/20241024_160915.jpg
  75. 二進制
      current-output/20241024_160920.jpg
  76. 二進制
      current-output/20241024_160922.jpg
  77. 二進制
      current-output/20241024_160923.jpg
  78. 二進制
      current-output/20241024_160927.jpg
  79. 二進制
      current-output/20241024_160930.jpg
  80. 二進制
      current-output/20241024_160935.jpg
  81. 二進制
      current-output/20241024_160938.jpg
  82. 二進制
      current-output/20241024_161034.jpg
  83. 二進制
      current-output/20241024_161104.jpg
  84. 二進制
      current-output/20241024_161106.jpg
  85. 二進制
      current-output/20241024_161109.jpg
  86. 二進制
      current-output/20241024_161113.jpg
  87. 二進制
      current-output/20241024_161118.jpg
  88. 二進制
      current-output/20241024_161119.jpg
  89. 二進制
      current-output/20241024_161120.jpg
  90. 二進制
      current-output/20241024_161122.jpg
  91. 二進制
      current-output/20241024_161124.jpg
  92. 二進制
      current-output/20241024_161144.jpg
  93. 二進制
      current-output/20241024_161232.jpg
  94. 二進制
      current-output/20241024_161234.jpg
  95. 二進制
      current-output/20241024_161235.jpg
  96. 二進制
      current-output/20241024_161238.jpg
  97. 二進制
      current-output/20241024_161241.jpg
  98. 二進制
      current-output/20241024_161246.jpg
  99. 二進制
      current-output/20241024_161249.jpg
  100. 二進制
      current-output/20241024_161250.jpg

+ 70 - 0
assets/connector.scad

@@ -0,0 +1,70 @@
+include <../config/connector.scad>
+
+module connector_shape() {
+    rounding = connector_depth / 2;
+    move = connector_width - rounding * 2;
+
+    module base_shape(split = false) {
+        if (!split) {
+            hull() {
+                circle(r = rounding);
+
+                translate([move, 0]) {
+                    circle(r = rounding);
+                }
+            }
+        } else {
+            translate([-move, 0]) {
+                base_shape(split = false);
+            }
+        }
+    }
+
+    module holes(split = false) {
+        if (!split) {
+            space_y = rounding * 2 / (connector_holes_in_y + 1);
+            space_x = move / (connector_holes_in_x - 1);
+
+            for (count_y = [-rounding : space_y : rounding]) {
+                if (count_y != rounding && count_y != -rounding) {
+                    for (count_x = [0 : space_x : move]) {
+                        translate([count_x, count_y]) {
+                            circle(r = connector_hole / 2);
+                        }
+                    }
+                }
+            }
+        } else {
+            translate([-move, 0]) {
+                holes(split = false);
+            }
+        }
+    }
+
+    module final_shape(split = false) {
+        difference() {
+            base_shape(split);
+            holes(split);
+        }
+    }
+
+    render() {
+        final_shape(split = false);
+
+        if (connector_dual) {
+            final_shape(split = true);
+        }   
+
+        rotate(180 - connector_angle) {
+            final_shape(split = true);
+        }
+    }
+}
+
+module connector_object() {
+    color("#FAAFCB") {
+        linear_extrude(height = connector_thickness, center = true) {
+            connector_shape();
+        }
+    }
+}

+ 47 - 0
assets/hinge.scad

@@ -0,0 +1,47 @@
+include <../config/hinge.scad>
+
+module hinge_object() {
+    module mount_shape() {
+        height = hinge_height;
+        width = hinge_screw + hinge_walls * 2;
+        
+        radius = width / 2;
+        move_y = height / 2;
+
+        module mount_base() {
+            hull() {
+                translate([0, move_y]) {
+                    circle(r = radius);
+                }
+
+                translate([0, -move_y]) {
+                    circle(r = radius);
+                }
+            }
+        }
+
+        module mount_holes() {
+            space = height / (hinge_screws_count - 1);
+
+            for (count = [-move_y : space : move_y]) {
+                translate([0, count]) {
+                    circle(r = hinge_screw / 2);
+                }
+            }
+        }
+
+        difference() {
+            mount_base();
+            mount_holes();
+        }
+    }
+    
+    module mount_object() {
+        linear_extrude(height = hinge_thickness, center = true) {
+            mount_shape();
+        }   
+    }
+
+    mount_object();
+}
+

+ 8 - 0
config/connector.scad

@@ -0,0 +1,8 @@
+connector_angle = 120;
+connector_hole = 3;
+connector_holes_in_x = 5;
+connector_holes_in_y = 2;
+connector_width = 150;
+connector_depth = 40;
+connector_thickness = 3;
+connector_dual = false;

+ 5 - 0
config/hinge.scad

@@ -0,0 +1,5 @@
+hinge_height = 50;
+hinge_thickness = 5;
+hinge_walls = 5;
+hinge_screw = 3;
+hinge_screws_count = 4;

二進制
current-output/20241024_160001.jpg


二進制
current-output/20241024_160020.jpg


二進制
current-output/20241024_160022.jpg


二進制
current-output/20241024_160025.jpg


二進制
current-output/20241024_160029.jpg


二進制
current-output/20241024_160031.jpg


二進制
current-output/20241024_160034.jpg


二進制
current-output/20241024_160037.jpg


二進制
current-output/20241024_160040.jpg


二進制
current-output/20241024_160042.jpg


二進制
current-output/20241024_160048.jpg


二進制
current-output/20241024_160050.jpg


二進制
current-output/20241024_160051.jpg


二進制
current-output/20241024_160132.jpg


二進制
current-output/20241024_160142.jpg


二進制
current-output/20241024_160145.jpg


二進制
current-output/20241024_160152.jpg


二進制
current-output/20241024_160207.jpg


二進制
current-output/20241024_160209.jpg


二進制
current-output/20241024_160212.jpg


二進制
current-output/20241024_160213.jpg


二進制
current-output/20241024_160214.jpg


二進制
current-output/20241024_160220.jpg


二進制
current-output/20241024_160224.jpg


二進制
current-output/20241024_160225.jpg


二進制
current-output/20241024_160326.jpg


二進制
current-output/20241024_160332.jpg


二進制
current-output/20241024_160339.jpg


二進制
current-output/20241024_160344.jpg


二進制
current-output/20241024_160345.jpg


二進制
current-output/20241024_160348.jpg


二進制
current-output/20241024_160350.jpg


二進制
current-output/20241024_160351.jpg


二進制
current-output/20241024_160401.jpg


二進制
current-output/20241024_160425.jpg


二進制
current-output/20241024_160426.jpg


二進制
current-output/20241024_160437.jpg


二進制
current-output/20241024_160438.jpg


二進制
current-output/20241024_160441.jpg


二進制
current-output/20241024_160444.jpg


二進制
current-output/20241024_160445.jpg


二進制
current-output/20241024_160447.jpg


二進制
current-output/20241024_160447_1.jpg


二進制
current-output/20241024_160451.jpg


二進制
current-output/20241024_160452.jpg


二進制
current-output/20241024_160454.jpg


二進制
current-output/20241024_160458.jpg


二進制
current-output/20241024_160459.jpg


二進制
current-output/20241024_160502.jpg


二進制
current-output/20241024_160510.jpg


二進制
current-output/20241024_160540.jpg


二進制
current-output/20241024_160542.jpg


二進制
current-output/20241024_160544.jpg


二進制
current-output/20241024_160547.jpg


二進制
current-output/20241024_160548.jpg


二進制
current-output/20241024_160552.jpg


二進制
current-output/20241024_160553.jpg


二進制
current-output/20241024_160555.jpg


二進制
current-output/20241024_160557.jpg


二進制
current-output/20241024_160558.jpg


二進制
current-output/20241024_160606.jpg


二進制
current-output/20241024_160607.jpg


二進制
current-output/20241024_160608.jpg


二進制
current-output/20241024_160614.jpg


二進制
current-output/20241024_160615.jpg


二進制
current-output/20241024_160620.jpg


二進制
current-output/20241024_160620_1.jpg


二進制
current-output/20241024_160900.jpg


二進制
current-output/20241024_160912.jpg


二進制
current-output/20241024_160915.jpg


二進制
current-output/20241024_160920.jpg


二進制
current-output/20241024_160922.jpg


二進制
current-output/20241024_160923.jpg


二進制
current-output/20241024_160927.jpg


二進制
current-output/20241024_160930.jpg


二進制
current-output/20241024_160935.jpg


二進制
current-output/20241024_160938.jpg


二進制
current-output/20241024_161034.jpg


二進制
current-output/20241024_161104.jpg


二進制
current-output/20241024_161106.jpg


二進制
current-output/20241024_161109.jpg


二進制
current-output/20241024_161113.jpg


二進制
current-output/20241024_161118.jpg


二進制
current-output/20241024_161119.jpg


二進制
current-output/20241024_161120.jpg


二進制
current-output/20241024_161122.jpg


二進制
current-output/20241024_161124.jpg


二進制
current-output/20241024_161144.jpg


二進制
current-output/20241024_161232.jpg


二進制
current-output/20241024_161234.jpg


二進制
current-output/20241024_161235.jpg


二進制
current-output/20241024_161238.jpg


二進制
current-output/20241024_161241.jpg


二進制
current-output/20241024_161246.jpg


二進制
current-output/20241024_161249.jpg


二進制
current-output/20241024_161250.jpg


部分文件因文件數量過多而無法顯示