tooth=1.8; difference() { union(){ translate([-10,0,0]) cube([20,17,4]); translate([-10,-4,0]) cube([20,4,10]); } translate([0,0,3]) belt (); translate([-1,11,-.1]) cylinder(r=2.3, h=5); translate([-1.5,8.7,-.1]) cube([3,4.6,5]); translate([1,11,-.1]) cylinder(r=2.3, h=5); } module belt() { translate([-10.1,-.1,0]) cube([20.2,7,4]); translate([-10,-.1,-1]) cube([tooth,7.2,2]); translate([-5,-.1,-1]) cube([tooth,7.2,2]); translate([0,-.1,-1]) cube([tooth,7.2,2]); translate([5,-.1,-1]) cube([tooth,7.2,2]); translate([10,-.1,-1]) cube([tooth,7.2,2]); }