$fa=1; $fs=0.4; function HornShape(y) = (5*5*16.0/(y+5*0.4))^0.5; difference() { rotate_extrude() { polygon([[0, 70], [0, 0], each⎵ [for (y=[0:0.1:70]) [HornShape(y), y]]]); translate([HornShape(0), 0]) circle(1); } translate([0, 0, -0.1]) rotate_extrude() { polygon([[0, 70.2], [0, 0], each [for (y=[0:0.1:70.2]) [HornShape(y)-1, y]]]); } }