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

redo rendering of parts, locate mount in center and connect with a cross, this should print both connect == 1 and connect == 2 arrays

Fernando Pablo Lopez-Lezcano 11 жил өмнө
parent
commit
2e875f6d8b
1 өөрчлөгдсөн 23 нэмэгдсэн , 31 устгасан
  1. 23 31
      first_order.scad

+ 23 - 31
first_order.scad

@@ -70,7 +70,7 @@ renderset = 1;
 // 0 -> original cylinder beams
 // 1 -> interlocking beams (out)
 // 2 -> interlocking beams (in)
-connect = 1;
+connect = 2;
 
 //// end of rendering control
 ////
@@ -280,31 +280,27 @@ if (rendermic == 0) {
             // #1
             translate([-part_sep, -part_sep, part_height]) { capsule(0, part_rot, leg_angles_bot, 90, 1); }
             // mount
-            translate([part_sep * 2.2, 0, mount_height]) { mount([-45, 135], 1, 0); }
-            
+            translate([0, 0, mount_height]) { mount([-45, 135], 1, 0); }            
             // add connecting ridges to make it all one part
-            for (rot_a = [-45, 45]) {
-                rotate([0, 0, rot_a]) {
-                    translate([0, -part_sep, 0]) {
-                        cube([wall, part_sep * 2, wall / 2]);
+            difference() {
+                for (rot_a = [-45, 45]) {
+                    rotate([0, 0, rot_a]) {
+                        translate([-wall / 2, -part_sep, 0]) {
+                            cube([wall, part_sep * 2, wall / 2]);
+                        }
                     }
                 }
+                // remove them in the inside of the mount
+                cylinder(r = mount_radius + wall / 2, h = wall / 2);
             }
-            for (rot_b = [-30]) {
-                translate([part_sep * 1.41, -part_sep, 0]) {
-                    rotate([0, 0, rot_b]) {
-                        cube([wall, part_sep, wall / 2]);
-                    }
-                }
-            }
-        } 
+        }
     } else {
         // connect == 2
         part_rot = -90;
         part_height = capsule_height;
-        part_sep = capsule_radius * 1.666;
+        part_sep = capsule_radius * 2;
         // #3
-        translate([part_sep, -part_sep, part_height]) { capsule(0, part_rot, leg_angles_top, 45 + 10, 0); }
+        translate([part_sep, -part_sep, part_height]) { capsule(0, part_rot, leg_angles_top, 0, 0); }
         if (renderset != 0) {
             // #4
             translate([part_sep, part_sep, part_height]) { capsule(0, part_rot, leg_angles_top, 0, 0); }
@@ -313,23 +309,19 @@ if (rendermic == 0) {
             // #1
             translate([-part_sep, -part_sep, part_height]) { capsule(0, part_rot, leg_angles_bot, 90, 1); }
             // mount
-            translate([part_sep * 2.2, 0, mount_height]) { mount([-45, 135], 1, 0); }
+            translate([0, 0, mount_height]) { mount([-45, 135], 1, 0); }
 
             // add connecting ridges to make it all one part
-            translate([-wall / 2, -part_sep, 0]) {
-                cube([wall, part_sep * 2, wall / 2]);
-            }
-            translate([-(part_sep - capsule_radius - wall / 2), part_sep - wall / 2, 0]) {
-                cube([(part_sep - capsule_radius - wall / 2) * 2, wall, wall / 2]);
-            }
-            translate([-(part_sep - capsule_radius - wall / 2), - part_sep - wall / 2, 0]) {
-                cube([(part_sep - capsule_radius - wall / 2) * 2, wall, wall / 2]);
-            }
-            // connect the mount
-            translate([part_sep * 2 - mount_radius - 1.5 * wall, - mount_radius - wall, 0]) {
-                rotate([0, 0, 45]) {
-                    cube([mount_radius + wall, wall, wall / 2]);
+            difference() {
+                for (rot_a = [-45, 45]) {
+                    rotate([0, 0, rot_a]) {
+                        translate([-wall / 2, -part_sep * 0.85, 0]) {
+                            cube([wall, part_sep * 1.75, wall / 2]);
+                        }
+                    }
                 }
+                // remove them in the inside of the mount
+                cylinder(r = mount_radius + wall / 2, h = wall / 2);
             }
         }
     }