Circle-Drawing Algorithms

Beginning with the equation of a circle:

We could solve for y in terms of x

,

and use this equation to compute the pixels of the circle. When finished we'd end up with code that looked something like the following:

    public void circleSimple(int xCenter, int yCenter, int radius, Color c)
    {
        int pix = c.getRGB();
        int x, y, r2;
        
        r2 = radius * radius;
        for (x = -radius; x <= radius; x++) {
            y = (int) (Math.sqrt(r2 - x*x) + 0.5);
            raster.setPixel(pix, xCenter + x, yCenter + y);
            raster.setPixel(pix, xCenter + x, yCenter - y);
        }
    }