aboutsummaryrefslogtreecommitdiffstats
path: root/src/ft_draw_circle.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ft_draw_circle.c')
-rw-r--r--src/ft_draw_circle.c26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/ft_draw_circle.c b/src/ft_draw_circle.c
index 32a1612..3e17dfa 100644
--- a/src/ft_draw_circle.c
+++ b/src/ft_draw_circle.c
@@ -18,24 +18,26 @@
void
ft_draw_circle(int32_t a, int32_t b, int32_t color, t_cub *cl)
{
- const uint16_t scale = cl->mlist->scale / 2.5;
- int x;
- int y;
+ float scale;
float i;
float angle;
float x1;
float y1;
- x = a;
- y = b;
-
i = 0;
- while (i < 360)
+ scale = cl->mlist->scale / 2.5;
+ while (scale > 0)
{
- angle = i;
- x1 = scale * cos(angle * M_PI / 180);
- y1 = scale * sin(angle * M_PI / 180);
- *(int*)(cl->img.ptr + (x + (int)x1) * 4 + ((y + (int)y1) * cl->img.sizeline)) = color;
- i += 0.1;
+ while (i < 360)
+ {
+ angle = i;
+ x1 = scale * cos(angle * M_PI / 180);
+ y1 = scale * sin(angle * M_PI / 180);
+ *(int*)(cl->img.ptr + (a + (int)x1) * 4 +
+ ((b + (int)y1) * cl->img.sizeline)) = color;
+ i += 0.1;
+ }
+ i = 0;
+ scale--;
}
}