int ft_draw(t_mlx *mlx) { int x; int y; int color; y = 0; while (y < WIN_H) { x = 0; while (x < WIN_W) { if (mlx->f->nb == 1) color = ft_color(ft_julia(mlx, x, y), mlx); else if (mlx->f->nb == 2) color = ft_color(ft_mandelbrot(mlx, x, y), mlx); else if (mlx->f->nb == 3) color = ft_color(ft_tricorn(mlx, x, y), mlx); put_pixel(mlx->f, x, y, color); x++; } y++; } mlx_put_image_to_window(mlx->mlx, mlx->win, mlx->f->img, 0, 0); return (0); }
int ft_draw_fractal(t_var *v) { int color; int x; int y; int i; y = 0; while (y < v->win_h) { x = 0; while (x < v->win_w) { if (v->type == 1 || v->type == 3) i = ft_mandel(v, x, y); else if (v->type == 2) i = ft_julia(v, x, y); color = ft_hsv(i % 256, v->ftl, i); ft_pixel_put(v, x, y, color); x++; } y++; } mlx_put_image_to_window(v->mlx, v->win, v->img, 0, 0); return (0); }
int expose_hook(int x, int y, t_data *val) { if (val->stop != 1 && val->info == 1) { mlx_destroy_image(val->mlx, val->img); mlx_clear_window(val->mlx, val->win); val->img = mlx_new_image(val->mlx, 1000, 650); if (x < 1000 && x > 1) val->cre = (double)x / 1000; if (y < 1000 && y > 1) val->cim = (double)y / 1000; if (val->info == 1) ft_julia(val); mlx_put_image_to_window(val->mlx, val->win, val->img, 0, 0); } return (0); }
void ft_fractal(t_env *env) { env->image_x = (env->x2 - env->x1) * env->zoom; env->image_y = (env->y2 - env->y1) * env->zoom; if (env->image_x > env->win_h * 4) env->image_x = env->win_h; if (env->image_y > env->win_l) env->image_y = env->win_l; if (env->mandelbrot == 1) ft_mandelbrot(env); if (env->julia == 1) ft_julia(env); if (env->droit == 1) ft_droit(env); if (env->burnship == 1) ft_burnship(env); if (env->tricorne == 1) ft_tricorne(env); }
int main(int ac, char **av) { if (ac == 1) { ft_putstr("\nFractales disponibles:\nJulia\nMan\nMan2\n"); return (0); } if (ac == 2) { if (ft_strcmp(av[1], "Julia") == 0) ft_julia(); else if (ft_strcmp(av[1], "Man") == 0) ft_mandelbrot(); else if (ft_strcmp(av[1], "Man2") == 0) ft_mandelbrot2(); else ft_putstr("\nFractales disponibles:\nJulia\nMan\nMan2\n"); } return (0); }
void ft_draw(t_fractol *e) { ft_bzero(e->data, e->s_l * HEIGHT); e->x = 0; while (e->x < WIDTH) { e->y = 0; while (e->y < HEIGHT) { if (e->fractal == 1) ft_mandelbrot(e); else if (e->fractal == 2) ft_julia(e); else if (e->fractal == 3) ft_burningship(e); else if (e->fractal == 4) ft_douady(e); e->y++; } e->x++; } mlx_put_image_to_window(e->mlx, e->win, e->img, 0, 0); ft_info(e); }