changeset 36:7fea1b327cd4

exploded view
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Fri, 15 Aug 2014 17:51:11 +0200
parents e55e406eaf70
children 302638f6e221
files scad/leg.scad scad/robot.scad
diffstat 2 files changed, 24 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/scad/leg.scad	Fri Aug 15 17:27:42 2014 +0200
+++ b/scad/leg.scad	Fri Aug 15 17:51:11 2014 +0200
@@ -1,31 +1,30 @@
 include <sg90.scad>
 
-module leg(hip, knee, ankle) {
+module leg(hip, knee, ankle, explode) {
     SG90_single_horn();
-    SG90_horn_screw();
-    translate([9, 0, 7]) rotate([0, 180, 0]) SG90_horn_screw();
-    translate([15, 0, 7]) rotate([0, 180, 0]) SG90_horn_screw();
-    SG90_horn_screw();
-    rotate(hip-90) {
+    translate([0, 0, explode]) SG90_horn_screw();
+    translate([9, 0, 7 - explode]) rotate([0, 180, 0]) SG90_horn_screw();
+    translate([15, 0, 7 - explode]) rotate([0, 180, 0]) SG90_horn_screw();
+    translate([0, 0, -explode]) rotate(hip - 90) {
         SG90();
-        translate([18, -23, -29]) rotate([90, 180, 90]) {
+        translate([18, -23 - explode, -29]) rotate([90, 180, 90]) {
             SG90();
-            rotate(knee) {
+            translate([0, 0, explode]) rotate(knee) {
                 SG90_single_horn();
-                SG90_horn_screw();
+                translate([0, 0, explode]) SG90_horn_screw();
                 translate([24, 0, 0]) {
-                    translate([0, 0, 6]) rotate([0, 180, 0]) SG90_double_horn();
-                    translate([-9, 0, 5]) rotate([0, 180, 0]) SG90_horn_screw();
-                    translate([-15, 0, 5]) rotate([0, 180, 0]) SG90_horn_screw();
-                    translate([9, 0, 5]) rotate([0, 180, 0]) SG90_horn_screw();
-                    translate([15, 0, 5]) rotate([0, 180, 0]) SG90_horn_screw();
+                    translate([0, 0, 6 - explode]) rotate([0, 180, 0]) SG90_double_horn();
+                    translate([-9, 0, 5 - explode * 2]) rotate([0, 180, 0]) SG90_horn_screw();
+                    translate([-15, 0, 5 - explode * 2]) rotate([0, 180, 0]) SG90_horn_screw();
+                    translate([9, 0, 5 - explode * 2]) rotate([0, 180, 0]) SG90_horn_screw();
+                    translate([15, 0, 5 - explode * 2]) rotate([0, 180, 0]) SG90_horn_screw();
                 }
                 translate([48, 0, 0]) rotate([0, 0, 180]) {
                     SG90_single_horn();
-                    SG90_horn_screw();
-                    rotate(ankle) {
+                    translate([0, 0, explode]) SG90_horn_screw();
+                    translate([0, 0, -explode]) rotate(ankle) {
                         SG90();
-                        translate([-11.1, -13, -18]) rotate([90, 180, 90]) {
+                        translate([-11.1 - explode, -13, -18]) rotate([90, 180, 90]) {
                             SG90_single_horn();
                         }
                     }
--- a/scad/robot.scad	Fri Aug 15 17:27:42 2014 +0200
+++ b/scad/robot.scad	Fri Aug 15 17:51:11 2014 +0200
@@ -1,14 +1,14 @@
 include <leg.scad>
 include <body.scad>
 
-module robot() {
-    translate([0, 0, 67]) {
-        body();
-        translate([-20, -20, -5]) rotate(45) leg(0, 0, 0);
-        translate([20, -20, -5]) rotate(135) mirror([0, 1, 0]) leg(0, 0, 0);
-        translate([-20, 20, -5]) rotate(-45) mirror([0, 1, 0]) leg(0, 0, 0);
-        translate([20, 20, -5]) rotate(-135) leg(0, 0, 0);
+module robot(explode) {
+    translate([0, 0, 67]) union() {
+        translate([0, 0, explode]) body();
+        translate([-20, -20, -5.1 - explode]) rotate(45) leg(0, 0, 0, explode);
+        translate([20, -20, -5.1 - explode]) rotate(135) mirror([0, 1, 0]) leg(0, 0, 0, explode);
+        translate([-20, 20, -5.1 - explode]) rotate(-45) mirror([0, 1, 0]) leg(0, 0, 0, explode);
+        translate([20, 20, -5.1 - explode]) rotate(-135) leg(0, 0, 0, explode);
     }
 }
 
-robot();
+robot(explode=10);