intersection() { difference() { union() { difference() { cylinder( r = 10, h= 43,$fn=100 ); translate( v = [0,0,1] ) { cylinder( r =9, h= 41, $fn=100 ); } } cylinder( r = 7, h = 43,$fn=50); } cylinder( r = 6, h = 43, $fn=50); } polyhedron( points = [[0,0,0], [10,16.45,0], [10,0,0], [0,0,50], [10,16.45,50],[10,0,50]], triangles = [[0,2,1], [0,1,3],[1,4,3],[1,2,4],[2,5,4], [2,0,5],[0,3,5],[3,4,5]] ); } difference() { translate( v=[6,-5,0]) { cube( size=[4, 5, 43] ); } translate( v =[7,-4,1] ) { cube( size=[2,4,41]); } } translate( v=[1,2.9,0]) { rotate( a=-30, v=[0,0,1] ) { cube( size=[1,4,43] ); } }