percusse has answered in the meantime, but I was thinking that Will Hunting's answer would be easy to adapt to this situation since in that answer the centre is explicitly calculated and then the arc drawn between two of the points. You already have the centre, so don't need to compute it. The only bit missing is whether it is possible to deform it to an ellipse rather than a circle.
–
Loop SpaceMar 9 '12 at 12:44

3 Answers
3

I would use a slightly lower level PGF (Portable Graphics Format) command \pgfpatharcto for this and I have guessed the 11cm by eyeballing. For the bonus I created a scope where I defined the x unit vector to be (-1,0) so whatever is drawn inside, the horizontal coordinate will be reversed. Hence, I can literally copy the right part code into left part except the arc command which accepts absolute coordinates (unless there is any coordinate transformation is going on).

EDIT2 : Filling the curve was much difficult with the code above so making a continuous path seemed easier since Damien already provided the necessary coordinates. There is simply no complication other than renaming the commands. The \pgfpathcurveto is equivalent to \draw (coord1) ..controls (support1) and (support2) .. (coord2) except that you have to move to (coord1) first. After the coordinate transformation, it is again a matter of copy-paste.