$IDFlange = 125; $ODFlange = 170; $HFlange = 3; $HAdapt = 50; $DHose = 100; $fn=100; difference() { union() { translate([0,0,$HAdapt]) difference() //lip { cylinder(h=$HFlange,d=$DHose+$HFlange*2); cylinder(h=$HFlange,d=$DHose-$HFlange*2); } difference() //base { cylinder(h=$HFlange,d=$ODFlange); cylinder(h=$HFlange,d=$IDFlange); } difference() //cone { cylinder(h=$HAdapt,d1=$IDFlange+$HFlange*2,d2=$DHose); cylinder(h=$HAdapt,d1=$IDFlange,d2=$DHose-$HFlange*2); } } union() { translate([80,0,0]) cylinder(h=20,d=5); rotate([0,0,120]) translate([80,0,0]) cylinder(h=20,d=5); rotate([0,0,-120]) translate([80,0,0]) cylinder(h=20,d=5); translate([0,(75+20/2),0]) cube([100,20,10],true); translate([-(75+20/2),0,0]) cube([20,100,10],true); } }