diff options
-rw-r--r-- | lasttretrad.scad | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/lasttretrad.scad b/lasttretrad.scad new file mode 100644 index 0000000..6c9e2d8 --- /dev/null +++ b/lasttretrad.scad @@ -0,0 +1,42 @@ +use <wheel.scad>; + +module frame() { + l=3000; + w=1000; + h=160; + translate([-l/2, -w/2, 0]) + cube([l, w, h]); +} + +// specify (f)ront/(c)enter/(b)ack as -1/0/1 and (l)eft/(r)ight as -1/1 +module wheel_position(fcb, lr) { + translate([1300 * fcb, 450 * lr, -250]) + children(); +} + +// specify (f)ront/(b)ack and (l)eft/(r)ight as -1/1 +module steered_wheel(fb=-1, lr=-1, rot=0) { + rotate([90, 0, fb*rot]) + wheel(); +} + +// specify (l)eft/(r)ight as -1/1 +module powered_wheel(lr=-1) { + rotate([90]) + wheel(); +} + +module lasttretrad() { + frame(); + + for (lr = [-1,1]) + for (fb = [-1,1]) + wheel_position(fb, lr) + steered_wheel(fb, lr, rot=30); + + for (lr = [-1,1]) + wheel_position(0, lr) + powered_wheel(lr); +} + +lasttretrad(); |