The circle algorithm can be generalized to work for an ellipse but only four way symmetry can be used.

All the points in one quadrant must be computed. Since Bresenham's algorithm is restricted to only one octant, the computation must occur in two stages. The changeover occurs when the point on the ellipse is reached where the tangent line has a slope of +- 1. In the first quadrant, this is when the x and y coordinates are both at 0.707 of their maximum.


From Graphica -- see details 4.12.1996