$fn = 12;

offset = 1.0;

r_inner = 0.2;
r_outer = 0.5;

rotate([0,0,180]) {

hull() {
    // hull around the small base
    translate([offset, 0, 0]) sphere(r_inner);

    // and the thick head
    sphere(r_outer);
}

pipe_len=0.3;
translate([offset, 0, 0]) {
    rotate([0,90,0]) cylinder(r=r_inner, pipe_len);
}

// fins
w = 0.5;
h = 0.8 * r_outer;

difference() {
    // fin
    for (i=[0:4]) {
        rotate([i*90,0,0]) {
            translate([offset-w/2+pipe_len,0,-h/2]) {
                hull() {
                    cube([w,0.05,0.01], center=true);
                    rotate([0,-5,0]) {
                        cube([w-0.2,0.05,h+0.15], center=true);
                    }
                }
            }
        }
    }

    // cutout part near end of pipe
    //translate([pipe_len+offset,0,0]) sphere(0.25);
}
}
