Mercurial > tote-had
changeset 2:c694cfc44d91
Add animated exploded view
| author | Radomir Dopieralski <sheep-devel@sheep.art.pl> |
|---|---|
| date | Sun, 06 Mar 2016 22:15:50 +0100 |
| parents | 1af8f7738de1 |
| children | f8bffeb4f945 |
| files | doc/scad/Makefile doc/scad/animate.scad doc/scad/tote.scad |
| diffstat | 3 files changed, 29 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/scad/Makefile Sun Mar 06 21:10:25 2016 +0100 +++ b/doc/scad/Makefile Sun Mar 06 22:15:50 2016 +0100 @@ -2,7 +2,7 @@ tote.png \ SIZE=1280,960 -SCAD=openscad --imgsize=$(SIZE) --projection=p -m make +SCAD=openscad --imgsize=$(SIZE) --projection=p -m make --colorscheme=BeforeDawn all: images @@ -14,5 +14,8 @@ %.png: %.scad $(SCAD) -o $@ $< +animate.png: animate.scad + $(SCAD) -o $@ $< --camera=0,0,-50,62,0,321.30,611.97 + tote.png: tote.scad $(SCAD) -o $@ $< --camera=12.40,-17.13,-29.65,45.90,0,30.60,401.52
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/scad/animate.scad Sun Mar 06 22:15:50 2016 +0100 @@ -0,0 +1,3 @@ +use <tote.scad> + +robot(20 * sin(90 + 180 * $t));
--- a/doc/scad/tote.scad Sun Mar 06 21:10:25 2016 +0100 +++ b/doc/scad/tote.scad Sun Mar 06 22:15:50 2016 +0100 @@ -3,29 +3,29 @@ module leg(hip, knee, ankle, explode) { SG90_single_horn(); translate([0, 0, explode]) SG90_horn_screw(); - translate([0, 0, -explode]) rotate(hip - 50 - 90) { + translate([0, 0, -explode * 2]) rotate(hip - 50 - 90) { rotate(0) SG90(); translate([18, -22 - explode, -28.75]) rotate([90, 180, 90]) { SG90(); - translate([0, 0, explode]) rotate(knee) { + translate([0, 0, explode * 2]) rotate(knee) { SG90_single_horn(); translate([0, 0, explode]) SG90_horn_screw(); translate([17.6, 0, 0]) { translate([0, 0, 6 - explode]) rotate([0, 180, 0]) SG90_double_horn(); - translate([-6, 0, 5 - explode * 2]) rotate([0, 180, 0]) + translate([-6, 0, 5 - explode * 1.5]) rotate([0, 180, 0]) SG90_horn_screw(); - translate([-12, 0, 5 - explode * 2]) rotate([0, 180, 0]) + translate([-12, 0, 5 - explode * 1.5]) rotate([0, 180, 0]) SG90_horn_screw(); - translate([6, 0, 5 - explode * 2]) rotate([0, 180, 0]) + translate([6, 0, 5 - explode * 1.5]) rotate([0, 180, 0]) SG90_horn_screw(); - translate([12, 0, 5 - explode * 2]) rotate([0, 180, 0]) + translate([12, 0, 5 - explode * 1.5]) rotate([0, 180, 0]) SG90_horn_screw(); } translate([35.2, 0, 0]) rotate([0, 0, 180]) { SG90_single_horn(); translate([0, 0, explode]) SG90_horn_screw(); - translate([0, 0, -explode]) rotate(ankle) { + translate([0, 0, -explode * 2]) rotate(ankle) { SG90(); translate([-3.1 - explode, -20, -15]) rotate([-90, 0, 90]) { @@ -39,8 +39,17 @@ } module board() { - translate([-25, -25, 0]) { - color("DimGray") cube([50, 50, 0.6]); + color("DimGray") difference() { + hull() { + translate([20.75, 20.75, 0]) cylinder(r=4, h=0.6, $fn=20); + translate([-20.75, -20.75, 0]) cylinder(r=4, h=0.6, $fn=20); + translate([20.75, -20.75, 0]) cylinder(r=4, h=0.6, $fn=20); + translate([-20.75, 20.75, 0]) cylinder(r=4, h=0.6, $fn=20); + } + translate([20.75, 20.75, -2]) cylinder(r=3.2, h=4, $fn=20); + translate([-20.75, -20.75, -2]) cylinder(r=3.2, h=4, $fn=20); + translate([20.75, -20.75, -2]) cylinder(r=3.2, h=4, $fn=20); + translate([-20.75, 20.75, -2]) cylinder(r=3.2, h=4, $fn=20); } } @@ -96,16 +105,16 @@ } module robot(explode) { - translate([20.75, 20.75, -2.1 - explode]) rotate(175) mirror([0, 1, 0]) { + translate([20.75, 20.75, -2.1 + explode]) rotate(175) mirror([0, 1, 0]) { leg(0, 0, 0, explode); } - translate([-20.75, -20.75, -2.1 - explode]) rotate(-5) mirror([0, 1, 0]) { + translate([-20.75, -20.75, -2.1 + explode]) rotate(-5) mirror([0, 1, 0]) { leg(0, 0, 0, explode); } - translate([20.75, -20.75, -2.1 - explode]) rotate(-175) { + translate([20.75, -20.75, -2.1 + explode]) rotate(-175) { leg(0, 0, 0, explode); } - translate([-20.75, 20.75, -2.1 - explode]) rotate(5) { + translate([-20.75, 20.75, -2.1 + explode]) rotate(5) { leg(0, 0, 0, explode); } body(explode);
