aboutsummaryrefslogtreecommitdiff
path: root/src/render.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-02-24 13:48:17 +0100
committerCharles <sircharlesaze@gmail.com>2020-02-24 13:48:17 +0100
commit8db6918f320b792698f385bb2ea58ddd94cba6fe (patch)
tree1df107a1357c11ba4473721b2ab608c842efbdf6 /src/render.c
parentee4c9685acd70b9b12b22d967c2a45e9a63a714c (diff)
downloadfractol-8db6918f320b792698f385bb2ea58ddd94cba6fe.tar.gz
fractol-8db6918f320b792698f385bb2ea58ddd94cba6fe.tar.bz2
fractol-8db6918f320b792698f385bb2ea58ddd94cba6fe.zip
window_complex position buffer, basic palette, mandelbrot working
Diffstat (limited to 'src/render.c')
-rw-r--r--src/render.c35
1 files changed, 30 insertions, 5 deletions
diff --git a/src/render.c b/src/render.c
index ab4fca9..b4ce29c 100644
--- a/src/render.c
+++ b/src/render.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/24 09:54:59 by cacharle #+# #+# */
-/* Updated: 2020/02/24 10:44:32 by cacharle ### ########.fr */
+/* Updated: 2020/02/24 13:46:44 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -28,9 +28,9 @@ static void st_render_fractal(t_state *state)
while (++j < state->window.width)
{
((t_color*)state->window.data)[offset] =
- state->palette[
- state->func(state->window_complex[offset])
- ];
+ state->palette[state->func(state->window_complex[offset])];
+ /* printf("%06x\n", ((t_color*)state->window.data)[offset].hexcode); */
+ /* printf("%d\n", state->func(state->window_complex[offset])); */
offset++;
}
}
@@ -43,8 +43,33 @@ int render_update(t_state *state)
state_destroy(state);
exit(EXIT_SUCCESS);
}
- /* st_render_fractal(state); */
+ st_render_fractal(state);
mlx_put_image_to_window(state->mlx_ptr, state->window_ptr, state->window.id, 0, 0);
return (0);
}
+void render_update_window_complex(t_state *state)
+{
+ int i;
+ int j;
+ int offset;
+
+ i = -1;
+ offset = 0;
+ while (++i < WINDOW_HEIGHT)
+ {
+ j = -1;
+ while (++j < WINDOW_WIDTH)
+ {
+ state->window_complex[offset].r =
+ ((double)j / (double)WINDOW_WIDTH) * state->plane.r - (state->plane.r / 2.0);
+ state->window_complex[offset].i =
+ ((double)i / (double)WINDOW_HEIGHT) * state->plane.i - (state->plane.i / 2.0);
+ offset++;
+ /* printf("%f %f\n", state->window_complex[i * WINDOW_WIDTH + j].a, state->window_complex[i * WINDOW_WIDTH + j].b); */
+ /* ((double)i / (double)WINDOW_HEIGHT) * state->plane.b - (state->plane.b / 2.0); */
+ /* printf("%f\n", (double)i / (double)WINDOW_HEIGHT * state->plane.b- (state->plane.b / 2.0)); */
+ /* h_offset_to_complex(state, state->window_complex + i, i); // helper bloat? */
+ }
+ }
+}