|
|
@@ -0,0 +1,55 @@
|
|
|
+include <../config/wall.scad>
|
|
|
+include <../config/wall_screw_narrowing.scad>
|
|
|
+
|
|
|
+module wall_screw_narrowing_top_object() {
|
|
|
+ diameter = wall_mounting_screws + wall_screw_narrowing_margin * 2;
|
|
|
+ screw = wall_screw_narrowing_hole;
|
|
|
+ thickness = wall_screw_narrowing_thickness;
|
|
|
+
|
|
|
+ module base_shape() {
|
|
|
+ difference() {
|
|
|
+ circle(r = diameter / 2);
|
|
|
+ circle(r = screw / 2);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ difference() {
|
|
|
+ linear_extrude(height = thickness) {
|
|
|
+ base_shape();
|
|
|
+ }
|
|
|
+
|
|
|
+ translate([0, 0, screw]) {
|
|
|
+ sphere(r = screw);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+module wall_screw_narrowing_bottom_object() {
|
|
|
+ diameter = wall_mounting_screws;
|
|
|
+ screw = wall_screw_narrowing_hole;
|
|
|
+ thickness = wall_thickness;
|
|
|
+
|
|
|
+ module base_shape() {
|
|
|
+ difference() {
|
|
|
+ circle(r = diameter / 2);
|
|
|
+ circle(r = screw / 2);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ linear_extrude(height = thickness) {
|
|
|
+ base_shape();
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+module wall_screw_narrowing_object() {
|
|
|
+ move_z_base = (wall_thickness + wall_screw_narrowing_thickness) / 2;
|
|
|
+ move_z = move_z_base - wall_screw_narrowing_thickness;
|
|
|
+
|
|
|
+ translate([0, 0, move_z]) {
|
|
|
+ wall_screw_narrowing_top_object();
|
|
|
+
|
|
|
+ translate([0, 0, -wall_thickness]) {
|
|
|
+ wall_screw_narrowing_bottom_object();
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|