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

move eyelet of shock mount from TinySpHEAR and Octathingy to SpHEAR_common, rework rendering of full shock mount

Fernando Pablo Lopez-Lezcano 10 жил өмнө
parent
commit
80d3885a52

+ 7 - 23
Octathingy_mount_pcb.scad

@@ -342,20 +342,6 @@ module octa_capsule_array_mount(angles) {
     }
 }
 
-// eyelet for connecting the external ring to the stand mount
-
-module tetra_shock_mount_ring(outside_radius, inside_radius, thickness) {
-    difference() {
-        union() {
-            cylinder(r = outside_radius, h = thickness, $fn = facets);
-            translate([0, -outside_radius, 0]) {
-                cube([outside_radius, outside_radius, thickness]);
-            }
-        }
-        cylinder(r = inside_radius, h = thickness, $fn = facets);
-    }
-}
-
 ////
 //// render all the different parts
 ////
@@ -488,17 +474,17 @@ module render_octa_shock_mount_internal_ring_top(z_offset) {
 // shock mount: render all parts
 //
 
-module render_tetra_shock_mount(z_offset) {
+module render_octa_shock_mount(z_offset) {
     // internal rings
     translate([0, 0, z_offset + ring_sep / 2]) {
-        render_tetra_shock_mount_internal_ring_top(0);
+        render_octa_shock_mount_internal_ring_top(0);
         rotate([0, 180, 0]) {
-            render_tetra_shock_mount_internal_ring_bot(ring_sep + 2);
+            render_octa_shock_mount_internal_ring_bot(ring_sep + 2);
         }
         // insert the connecting rods
         for (r = [0, 90, 180, 270]) {
             rotate([0, 0, r]) {
-                translate([box_radius + 3 * wall + internal_ring_gap, 0, -1]) {
+                translate([((r % 180) ? box_radius * 2 : box_radius) + 3 * wall + internal_ring_gap, 0, -1]) {
                     rotate([0, 90, 0]) {
                         translate([-4, -5, 1]) {
                             shock_mount_connector(ring_sep, 4, connector_w, connector_d, 0.1);
@@ -510,13 +496,11 @@ module render_tetra_shock_mount(z_offset) {
     }
     // external ring
     translate([0, 0, z_offset - ring_height / 4]) {
-        render_tetra_shock_mount_external_ring(0);
+        render_octa_shock_mount_external_ring(0);
     }
     // mount to stand
-    translate([0, 85, -(mic_mount_height + mic_mount_radius + ring_height / 4)]) {
-        rotate([0, 0, 90]) {
-            render_octa_shock_mount_stand(0);
-        }
+    translate([box_radius + mount_corner + ring_wall + ring_arm_gap + 8 + ring_wall / 2 + 4, 0, -(mic_mount_height + mic_mount_radius + ring_height / 4)]) {
+        render_octa_shock_mount_stand(0);
     }
 }
 

+ 16 - 2
SpHEAR_common.scad

@@ -286,6 +286,20 @@ module rounded_box(height, width, depth, radius, wall) {
 
 //// shared modules for shock mount
 
+// eyelet for connecting the external ring to the stand mount
+
+module shock_mount_ring(outside_radius, inside_radius, thickness) {
+    difference() {
+        union() {
+            cylinder(r = outside_radius, h = thickness, $fn = facets);
+            translate([0, -outside_radius, 0]) {
+                cube([outside_radius, outside_radius, thickness]);
+            }
+        }
+        cylinder(r = inside_radius, h = thickness, $fn = facets);
+    }
+}
+
 // internal ring of shock mount
 
 module shock_mount_internal_ring(height, xradius, yradius, corner, gap, lip) {
@@ -397,7 +411,7 @@ module shock_mount_external_ring(height, xradius, yradius, corner, gap, lip) {
     i_rad = 3;
     rotate([0, 90, -90]) {
         translate([-o_rad, xradius + mount_corner + ring_wall + ring_arm_gap + o_rad + ring_wall / 2 + 4, -2]) {
-            tetra_shock_mount_ring(o_rad, i_rad, ring_wall);
+            shock_mount_ring(o_rad, i_rad, ring_wall);
         }
     }
 }
@@ -458,7 +472,7 @@ module shock_mount_stand(height, wall, stand_wall) {
             rotate([90, 90, 0]) {
                 translate([-(height + o_rad + 6), 0, thk/2 + fit]) {
                     rotate([0, 0, 45])
-                        tetra_shock_mount_ring(o_rad, i_rad, thk);
+                        shock_mount_ring(o_rad, i_rad, thk);
                 }
             }
         }

+ 2 - 18
TinySpHEAR_mount_pcb.scad

@@ -280,20 +280,6 @@ module tetra_capsule_array_mount(angles) {
     }
 }
 
-// eyelet for connecting the external ring to the stand mount
-
-module tetra_shock_mount_ring(outside_radius, inside_radius, thickness) {
-    difference() {
-        union() {
-            cylinder(r = outside_radius, h = thickness, $fn = facets);
-            translate([0, -outside_radius, 0]) {
-                cube([outside_radius, outside_radius, thickness]);
-            }
-        }
-        cylinder(r = inside_radius, h = thickness, $fn = facets);
-    }
-}
-
 ////
 //// render all the different parts
 ////
@@ -454,10 +440,8 @@ module render_tetra_shock_mount(z_offset) {
         render_tetra_shock_mount_external_ring(0);
     }
     // mount to stand
-    translate([0, 85, -(mic_mount_height + mic_mount_radius + ring_height / 4)]) {
-        rotate([0, 0, 90]) {
-            render_tetra_shock_mount_stand(0);
-        }
+    translate([box_radius + mount_corner + ring_wall + ring_arm_gap + 8 + ring_wall / 2 + 4, 0, -(mic_mount_height + mic_mount_radius + ring_height / 4)]) {
+        render_tetra_shock_mount_stand(0);
     }
 }