Forráskód Böngészése

make the snap joints in the SpHEAR microphone body optional

Fernando Pablo Lopez-Lezcano 9 éve
szülő
commit
91695fe1fe
1 módosított fájl, 47 hozzáadás és 34 törlés
  1. 47 34
      TinySpHEAR_mount_pcb.scad

+ 47 - 34
TinySpHEAR_mount_pcb.scad

@@ -105,6 +105,9 @@ box_radius = pcb_front + (pcb_thickness + pcb_tfit) + pcb_back + 2 * wall;
 // calculated main body corner radius
 mount_corner = box_radius - pcb_width / 2 + pcb_slot_depth + 4.0;
 
+// render span joints to join all three main assemblies
+render_snap_joints = false;
+
 // body to flares snap joint arm slot width
 snap_joint_slot_w = 0.75;
 
@@ -199,28 +202,32 @@ module tetra_mount_body(height, radius, corner, lower_lip, upper_lip, clear) {
                     rounded_block_relative(lower_lip, radius, radius, corner, -(wall + lip_fit));
                 }
             }
-            // slots for snap joint hooks
-            // lower
-            for (m=[-1, 1]) rotate([0, 90, 0]) {
-                translate([-lower_lip * 3/4, (radius - wall/2)*m, -(snap_joint_hook_w/2 + 0.25)]) {
-                    cylinder(r = snap_joint_hook_r, h = snap_joint_hook_w + 0.5, $fn = facets);
+            if (render_snap_joints) {
+                // slots for snap joint hooks
+                // lower
+                for (m=[-1, 1]) rotate([0, 90, 0]) {
+                    translate([-lower_lip * 3/4, (radius - wall/2)*m, -(snap_joint_hook_w/2 + 0.25)]) {
+                        cylinder(r = snap_joint_hook_r, h = snap_joint_hook_w + 0.5, $fn = facets);
+                    }
                 }
-            }
-            // upper
-            for (m=[-1, 1]) rotate([0, 90, 0]) {
-                translate([- height + upper_lip * 3/4, (radius - wall/2)*m, -(snap_joint_hook_w/2 + 0.25)]) {
-                    cylinder(r = snap_joint_hook_r, h = snap_joint_hook_w + 0.5, $fn = facets);
+                // upper
+                for (m=[-1, 1]) rotate([0, 90, 0]) {
+                    translate([- height + upper_lip * 3/4, (radius - wall/2)*m, -(snap_joint_hook_w/2 + 0.25)]) {
+                        cylinder(r = snap_joint_hook_r, h = snap_joint_hook_w + 0.5, $fn = facets);
+                    }
                 }
             }
         }
     }
-    // upper lip is too thin, reinforce the back of the snap joint hook holes
-    for (r = [0, 180]) rotate([0, 90, r]) {
-        translate([- height + upper_lip * 3/4, (radius - wall), -(snap_joint_hook_w/2 + 0.25)]) {
-            difference() {
-                cylinder(r = snap_joint_hook_r * 1.25, h = snap_joint_hook_w + 0.5, $fn = facets);
-                translate([- snap_joint_hook_r * 1.25, - wall, 0]) {
-                    cube([snap_joint_hook_r * 3, snap_joint_hook_r * 3, snap_joint_hook_w * 1.5]);
+    if (render_snap_joints) {
+        // upper lip is too thin, reinforce the back of the snap joint hook holes
+        for (r = [0, 180]) rotate([0, 90, r]) {
+            translate([- height + upper_lip * 3/4, (radius - wall), -(snap_joint_hook_w/2 + 0.25)]) {
+                difference() {
+                    cylinder(r = snap_joint_hook_r * 1.25, h = snap_joint_hook_w + 0.5, $fn = facets);
+                    translate([- snap_joint_hook_r * 1.25, - wall, 0]) {
+                        cube([snap_joint_hook_r * 3, snap_joint_hook_r * 3, snap_joint_hook_w * 1.5]);
+                    }
                 }
             }
         }
@@ -264,21 +271,25 @@ module tetra_mount_flare(height, lip, transition, bot_radius, bot_corner, top_ra
     difference() {
         union() {
             rounded_block(height, bot_radius, bot_radius, bot_corner);
-            // make snap joint arm thicker
-            for (r = [0, 180]) rotate([0, 0, r]) {
-                translate([- snap_joint_hook_w - snap_joint_slot_w / 2, bot_radius, 0]) {
-                    cube([snap_joint_hook_w * 2 + snap_joint_slot_w, wall / 2, lip * 1.25]);
+            if (render_snap_joints) {
+                // make snap joint arm thicker
+                for (r = [0, 180]) rotate([0, 0, r]) {
+                    translate([- snap_joint_hook_w - snap_joint_slot_w / 2, bot_radius, 0]) {
+                        cube([snap_joint_hook_w * 2 + snap_joint_slot_w, wall / 2, lip * 1.25]);
+                    }
                 }
             }
         }
         rounded_block_relative(height, bot_radius, bot_radius, bot_corner, -(2 * wall));
         // cut flange to mount on body
         rounded_block_relative(lip + 1.00, bot_radius, bot_radius, bot_corner, - (wall));
-        // cut slots for snap joint hooks
-        for (r = [0, 180]) rotate([0, 0, r]) {
-            for (m = [-1, 1]) {
-                translate([m * (snap_joint_hook_w + snap_joint_slot_w) - snap_joint_slot_w / 2, bot_radius - 1.5 * wall, 0]) {
-                    cube([snap_joint_slot_w, 2 * wall, lip - 1.0]);
+        if (render_snap_joints) {
+            // cut slots for snap joint hooks
+            for (r = [0, 180]) rotate([0, 0, r]) {
+                for (m = [-1, 1]) {
+                    translate([m * (snap_joint_hook_w + snap_joint_slot_w) - snap_joint_slot_w / 2, bot_radius - 1.5 * wall, 0]) {
+                        cube([snap_joint_slot_w, 2 * wall, lip - 1.0]);
+                    }
                 }
             }
         }
@@ -292,14 +303,16 @@ module tetra_mount_flare(height, lip, transition, bot_radius, bot_corner, top_ra
             }
         }
     }
-    // add snap joint hook to arm
-    for (r = [0, 180]) rotate([0, 0, r]) {
-        translate([- snap_joint_hook_w / 2, bot_radius - wall/2, 1/4 * lip]) {
-            rotate([90, 0, 90]) {
-                difference() {
-                    cylinder(r = snap_joint_hook_r - 0.2, h = snap_joint_hook_w, $fn = facets);
-                    translate([0, -snap_joint_hook_r, 0]) {
-                        cube([snap_joint_hook_r, snap_joint_hook_w, snap_joint_hook_w]);
+    if (render_snap_joints) {
+        // add snap joint hook to arm
+        for (r = [0, 180]) rotate([0, 0, r]) {
+            translate([- snap_joint_hook_w / 2, bot_radius - wall/2, 1/4 * lip]) {
+                rotate([90, 0, 90]) {
+                    difference() {
+                        cylinder(r = snap_joint_hook_r - 0.2, h = snap_joint_hook_w, $fn = facets);
+                        translate([0, -snap_joint_hook_r, 0]) {
+                            cube([snap_joint_hook_r, snap_joint_hook_w, snap_joint_hook_w]);
+                        }
                     }
                 }
             }