Эх сурвалжийг харах

Create connector for wood.

cixo 1 жил өмнө
parent
commit
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. BIN
      current-output/20241024_160001.jpg
  6. BIN
      current-output/20241024_160020.jpg
  7. BIN
      current-output/20241024_160022.jpg
  8. BIN
      current-output/20241024_160025.jpg
  9. BIN
      current-output/20241024_160029.jpg
  10. BIN
      current-output/20241024_160031.jpg
  11. BIN
      current-output/20241024_160034.jpg
  12. BIN
      current-output/20241024_160037.jpg
  13. BIN
      current-output/20241024_160040.jpg
  14. BIN
      current-output/20241024_160042.jpg
  15. BIN
      current-output/20241024_160048.jpg
  16. BIN
      current-output/20241024_160050.jpg
  17. BIN
      current-output/20241024_160051.jpg
  18. BIN
      current-output/20241024_160132.jpg
  19. BIN
      current-output/20241024_160142.jpg
  20. BIN
      current-output/20241024_160145.jpg
  21. BIN
      current-output/20241024_160152.jpg
  22. BIN
      current-output/20241024_160207.jpg
  23. BIN
      current-output/20241024_160209.jpg
  24. BIN
      current-output/20241024_160212.jpg
  25. BIN
      current-output/20241024_160213.jpg
  26. BIN
      current-output/20241024_160214.jpg
  27. BIN
      current-output/20241024_160220.jpg
  28. BIN
      current-output/20241024_160224.jpg
  29. BIN
      current-output/20241024_160225.jpg
  30. BIN
      current-output/20241024_160326.jpg
  31. BIN
      current-output/20241024_160332.jpg
  32. BIN
      current-output/20241024_160339.jpg
  33. BIN
      current-output/20241024_160344.jpg
  34. BIN
      current-output/20241024_160345.jpg
  35. BIN
      current-output/20241024_160348.jpg
  36. BIN
      current-output/20241024_160350.jpg
  37. BIN
      current-output/20241024_160351.jpg
  38. BIN
      current-output/20241024_160401.jpg
  39. BIN
      current-output/20241024_160425.jpg
  40. BIN
      current-output/20241024_160426.jpg
  41. BIN
      current-output/20241024_160437.jpg
  42. BIN
      current-output/20241024_160438.jpg
  43. BIN
      current-output/20241024_160441.jpg
  44. BIN
      current-output/20241024_160444.jpg
  45. BIN
      current-output/20241024_160445.jpg
  46. BIN
      current-output/20241024_160447.jpg
  47. BIN
      current-output/20241024_160447_1.jpg
  48. BIN
      current-output/20241024_160451.jpg
  49. BIN
      current-output/20241024_160452.jpg
  50. BIN
      current-output/20241024_160454.jpg
  51. BIN
      current-output/20241024_160458.jpg
  52. BIN
      current-output/20241024_160459.jpg
  53. BIN
      current-output/20241024_160502.jpg
  54. BIN
      current-output/20241024_160510.jpg
  55. BIN
      current-output/20241024_160540.jpg
  56. BIN
      current-output/20241024_160542.jpg
  57. BIN
      current-output/20241024_160544.jpg
  58. BIN
      current-output/20241024_160547.jpg
  59. BIN
      current-output/20241024_160548.jpg
  60. BIN
      current-output/20241024_160552.jpg
  61. BIN
      current-output/20241024_160553.jpg
  62. BIN
      current-output/20241024_160555.jpg
  63. BIN
      current-output/20241024_160557.jpg
  64. BIN
      current-output/20241024_160558.jpg
  65. BIN
      current-output/20241024_160606.jpg
  66. BIN
      current-output/20241024_160607.jpg
  67. BIN
      current-output/20241024_160608.jpg
  68. BIN
      current-output/20241024_160614.jpg
  69. BIN
      current-output/20241024_160615.jpg
  70. BIN
      current-output/20241024_160620.jpg
  71. BIN
      current-output/20241024_160620_1.jpg
  72. BIN
      current-output/20241024_160900.jpg
  73. BIN
      current-output/20241024_160912.jpg
  74. BIN
      current-output/20241024_160915.jpg
  75. BIN
      current-output/20241024_160920.jpg
  76. BIN
      current-output/20241024_160922.jpg
  77. BIN
      current-output/20241024_160923.jpg
  78. BIN
      current-output/20241024_160927.jpg
  79. BIN
      current-output/20241024_160930.jpg
  80. BIN
      current-output/20241024_160935.jpg
  81. BIN
      current-output/20241024_160938.jpg
  82. BIN
      current-output/20241024_161034.jpg
  83. BIN
      current-output/20241024_161104.jpg
  84. BIN
      current-output/20241024_161106.jpg
  85. BIN
      current-output/20241024_161109.jpg
  86. BIN
      current-output/20241024_161113.jpg
  87. BIN
      current-output/20241024_161118.jpg
  88. BIN
      current-output/20241024_161119.jpg
  89. BIN
      current-output/20241024_161120.jpg
  90. BIN
      current-output/20241024_161122.jpg
  91. BIN
      current-output/20241024_161124.jpg
  92. BIN
      current-output/20241024_161144.jpg
  93. BIN
      current-output/20241024_161232.jpg
  94. BIN
      current-output/20241024_161234.jpg
  95. BIN
      current-output/20241024_161235.jpg
  96. BIN
      current-output/20241024_161238.jpg
  97. BIN
      current-output/20241024_161241.jpg
  98. BIN
      current-output/20241024_161246.jpg
  99. BIN
      current-output/20241024_161249.jpg
  100. BIN
      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;

BIN
current-output/20241024_160001.jpg


BIN
current-output/20241024_160020.jpg


BIN
current-output/20241024_160022.jpg


BIN
current-output/20241024_160025.jpg


BIN
current-output/20241024_160029.jpg


BIN
current-output/20241024_160031.jpg


BIN
current-output/20241024_160034.jpg


BIN
current-output/20241024_160037.jpg


BIN
current-output/20241024_160040.jpg


BIN
current-output/20241024_160042.jpg


BIN
current-output/20241024_160048.jpg


BIN
current-output/20241024_160050.jpg


BIN
current-output/20241024_160051.jpg


BIN
current-output/20241024_160132.jpg


BIN
current-output/20241024_160142.jpg


BIN
current-output/20241024_160145.jpg


BIN
current-output/20241024_160152.jpg


BIN
current-output/20241024_160207.jpg


BIN
current-output/20241024_160209.jpg


BIN
current-output/20241024_160212.jpg


BIN
current-output/20241024_160213.jpg


BIN
current-output/20241024_160214.jpg


BIN
current-output/20241024_160220.jpg


BIN
current-output/20241024_160224.jpg


BIN
current-output/20241024_160225.jpg


BIN
current-output/20241024_160326.jpg


BIN
current-output/20241024_160332.jpg


BIN
current-output/20241024_160339.jpg


BIN
current-output/20241024_160344.jpg


BIN
current-output/20241024_160345.jpg


BIN
current-output/20241024_160348.jpg


BIN
current-output/20241024_160350.jpg


BIN
current-output/20241024_160351.jpg


BIN
current-output/20241024_160401.jpg


BIN
current-output/20241024_160425.jpg


BIN
current-output/20241024_160426.jpg


BIN
current-output/20241024_160437.jpg


BIN
current-output/20241024_160438.jpg


BIN
current-output/20241024_160441.jpg


BIN
current-output/20241024_160444.jpg


BIN
current-output/20241024_160445.jpg


BIN
current-output/20241024_160447.jpg


BIN
current-output/20241024_160447_1.jpg


BIN
current-output/20241024_160451.jpg


BIN
current-output/20241024_160452.jpg


BIN
current-output/20241024_160454.jpg


BIN
current-output/20241024_160458.jpg


BIN
current-output/20241024_160459.jpg


BIN
current-output/20241024_160502.jpg


BIN
current-output/20241024_160510.jpg


BIN
current-output/20241024_160540.jpg


BIN
current-output/20241024_160542.jpg


BIN
current-output/20241024_160544.jpg


BIN
current-output/20241024_160547.jpg


BIN
current-output/20241024_160548.jpg


BIN
current-output/20241024_160552.jpg


BIN
current-output/20241024_160553.jpg


BIN
current-output/20241024_160555.jpg


BIN
current-output/20241024_160557.jpg


BIN
current-output/20241024_160558.jpg


BIN
current-output/20241024_160606.jpg


BIN
current-output/20241024_160607.jpg


BIN
current-output/20241024_160608.jpg


BIN
current-output/20241024_160614.jpg


BIN
current-output/20241024_160615.jpg


BIN
current-output/20241024_160620.jpg


BIN
current-output/20241024_160620_1.jpg


BIN
current-output/20241024_160900.jpg


BIN
current-output/20241024_160912.jpg


BIN
current-output/20241024_160915.jpg


BIN
current-output/20241024_160920.jpg


BIN
current-output/20241024_160922.jpg


BIN
current-output/20241024_160923.jpg


BIN
current-output/20241024_160927.jpg


BIN
current-output/20241024_160930.jpg


BIN
current-output/20241024_160935.jpg


BIN
current-output/20241024_160938.jpg


BIN
current-output/20241024_161034.jpg


BIN
current-output/20241024_161104.jpg


BIN
current-output/20241024_161106.jpg


BIN
current-output/20241024_161109.jpg


BIN
current-output/20241024_161113.jpg


BIN
current-output/20241024_161118.jpg


BIN
current-output/20241024_161119.jpg


BIN
current-output/20241024_161120.jpg


BIN
current-output/20241024_161122.jpg


BIN
current-output/20241024_161124.jpg


BIN
current-output/20241024_161144.jpg


BIN
current-output/20241024_161232.jpg


BIN
current-output/20241024_161234.jpg


BIN
current-output/20241024_161235.jpg


BIN
current-output/20241024_161238.jpg


BIN
current-output/20241024_161241.jpg


BIN
current-output/20241024_161246.jpg


BIN
current-output/20241024_161249.jpg


BIN
current-output/20241024_161250.jpg


Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно