//Resolution res=50; $fn=res; module Driveshaft(){ union(){ Multiply(); translate([0,0,-18])cylinder(h=85, r=(3)); }} module divider(){ translate([0,-0.5,0])cube([5,10.5,35.4/2]); translate([10,-0.5,0])cube([5,10.5,35.4/2]); translate([20,-0.5,0])cube([5,10.5,35.4/2]); translate([30,-0.5,0])cube([5,10.5,35.4/2]); translate([40,-0.5,0])cube([5,10.5,35.4/2]); translate([5,50.4,0])cube([5,10.5,35.4/2]); translate([15,50.4,0])cube([5,10.5,35.4/2]); translate([25,50.4,0])cube([5,10.5,35.4/2]); translate([35,50.4,0])cube([5,10.5,35.4/2]); translate([45,50.4,0])cube([5,10.5,35.4/2]); } module outerbox(){ translate([0,-10.5,-35.4/2])cube([50,10,35.4]);//left side translate([-10,-10.5,-35.4/2])cube([10,71.4,35.4]);//long side translate([-10,60.9,-35.4/2])cube([70,10,35.4]);//right side translate([50,-10.5,-35.4/2])cube([10,71.4,35.4]);//long side } module lowerhalf(){ union(){ divider(); outerbox(); }} module shafts(){ translate([-15,17.7,35.4/2])rotate([0,90,0])cylinder(h=20, r=3); translate([-15,43.1,35.4/2])rotate([0,90,0])cylinder(h=20, r=3); translate([45,17.7,35.4/2])rotate([0,90,0])cylinder(h=20, r=3); translate([45,43.1,35.4/2])rotate([0,90,0])cylinder(h=20, r=3); } module finishedlower(){ difference(){ lowerhalf(); shafts(); }} module fitting(){ translate([-5,-5,2.7])cylinder(h=15, r=2.8); translate([-5,62,2.7])cylinder(h=15, r=2.8); translate([53,-5,2.7])cylinder(h=15, r=2.8); translate([53,62,2.7])cylinder(h=15, r=2.8); } module lower(){ difference(){ finishedlower(); fitting(); }} lower();