SYNOPSIS

#include <allegro.h>

void do_circle(BITMAP *bmp, int x, int y, int radius, int d, void (*proc)(BITMAP *bmp, int x, int y, int d));

DESCRIPTION

Calculates all the points in a circle around point (x, y) with radius r, calling the supplied function for each one. This will be passed a copy of the bmp parameter, the x and y position, and a copy of the d parameter, so it is suitable for use with putpixel(). Example:

   void draw_explosion_ring(BITMAP *bmp, int x, int y, int d)
   {
      ...
   }

      do_circle(screen, SCREEN_W/2, SCREEN_H/2,
                SCREEN_H/16, flame_color,
                draw_explosion_ring);

RELATED TO do_circle…

do_ellipse(3alleg4), do_arc(3alleg4), do_line(3alleg4), circle(3alleg4), circlefill(3alleg4)