union() { difference() { difference() { difference() { difference() { translate(v=[31.000, 29.000, 5.000]) { union() { cube(size=[42.000, 38.000, 10.000], center=true); translate(v=[21.000, 19.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[-21.000, 19.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[-21.000, -19.000, 0.000]) { cube(size=[20.000, 20.000, 10.000], center=true); } // End translate translate(v=[21.000, -19.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[0.000, 24.000, 0.000]) { cube(size=[42.000, 10.000, 10.000], center=true); } // End translate translate(v=[0.000, -24.000, 0.000]) { cube(size=[42.000, 10.000, 10.000], center=true); } // End translate translate(v=[26.000, 0.000, 0.000]) { cube(size=[10.000, 38.000, 10.000], center=true); } // End translate translate(v=[-26.000, 0.000, 0.000]) { cube(size=[10.000, 38.000, 10.000], center=true); } // End translate } // End union } // End translate translate(v=[41.000, 29.000, 5.000]) { union() { cube(size=[42.000, 18.000, 10.000], center=true); translate(v=[21.000, 9.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[-21.000, 9.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[-21.000, -9.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[21.000, -9.000, 0.000]) { cylinder(h=10.000, r1=10.000, r2=10.000, $fn=100, center=true); } // End translate translate(v=[0.000, 14.000, 0.000]) { cube(size=[42.000, 10.000, 10.000], center=true); } // End translate translate(v=[0.000, -14.000, 0.000]) { cube(size=[42.000, 10.000, 10.000], center=true); } // End translate translate(v=[26.000, 0.000, 0.000]) { cube(size=[10.000, 18.000, 10.000], center=true); } // End translate translate(v=[-26.000, 0.000, 0.000]) { cube(size=[10.000, 18.000, 10.000], center=true); } // End translate } // End union } // End translate } // End difference cube(size=[10.000, 12.000, 10.000], center=false); } // End difference translate(v=[16.000, 5.000, 0.000]) { cube(size=[2.700, 7.950, 17.950], center=true); } // End translate } // End difference translate(v=[10.000, 5.000, 5.000]) { rotate(a=[0.000, 90.000, 0.000]) { cylinder(h=20.000, r1=2.000, r2=2.000, $fn=100, center=true); } // End rotate } // End translate } // End difference translate(v=[40.000, 50.000, -3.750]) { rotate(a=[90.000, 0.000, 0.000]) { translate(v=[-50.000, 6.000, 25.000]) { union() { translate(v=[0.000, 3.750, 0.000]) { difference() { cube(size=[5.000, 12.000, 150.000], center=true); translate(v=[0.000, 7.000, 0.000]) { cube(size=[3.000, 17.000, 145.000], center=true); } // End translate } // End difference } // End translate translate(v=[37.500, 0.000, -40.000]) { cube(size=[80.000, 4.500, 4.500], center=true); } // End translate translate(v=[37.500, 0.000, 40.000]) { cube(size=[80.000, 4.500, 4.500], center=true); } // End translate } // End union } // End translate } // End rotate } // End translate translate(v=[-20.000, 50.000, 5.000]) { rotate(a=[90.000, -90.000, 0.000]) { translate(v=[0.000, 6.000, 25.000]) { difference() { difference() { difference() { difference() { difference() { cube(size=[10.000, 12.000, 100.000], center=true); translate(v=[0.000, 0.000, -40.000]) { cube(size=[10.000, 5.000, 5.000], center=true); } // End translate } // End difference translate(v=[0.000, 0.000, 40.000]) { cube(size=[10.000, 5.000, 5.000], center=true); } // End translate } // End difference translate(v=[0.000, 1.000, -20.000]) { rotate(a=[0.000, 90.000, 0.000]) { cylinder(h=15.000, r1=2.000, r2=2.000, $fn=100, center=true); } // End rotate } // End translate } // End difference translate(v=[0.000, 0.000, -40.000]) { rotate(a=[90.000, 0.000, 0.000]) { cylinder(h=30.000, r1=1.500, r2=1.500, $fn=100, center=true); } // End rotate } // End translate } // End difference translate(v=[0.000, 0.000, 40.000]) { rotate(a=[90.000, 0.000, 0.000]) { cylinder(h=30.000, r1=1.500, r2=1.500, $fn=100, center=true); } // End rotate } // End translate } // End difference } // End translate } // End rotate } // End translate } // End union