From df6e7cbaa0edf2df8b5f3929a2eb34fa2aa5a28c Mon Sep 17 00:00:00 2001 From: Charles Date: Wed, 28 Aug 2019 13:57:11 +0200 Subject: Proportionnal movement and zoom Zooming and moving is proportionnal to the range we are viewing, feels more natural than incrementing by a constant value. --- mandelbrot.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'mandelbrot.c') diff --git a/mandelbrot.c b/mandelbrot.c index 51d6648..d44b12b 100644 --- a/mandelbrot.c +++ b/mandelbrot.c @@ -3,9 +3,13 @@ #include #include "header.h" +#define PRINT_REAL_LO -2.0 +#define PRINT_REAL_HI 2.0 +#define PRINT_IMAG_LO -2.0 +#define PRINT_IMAG_HI 2.0 #define AXIS_DIV 46.0 -#define REAL_AXIS_STEP ((REAL_HI - REAL_LO) / AXIS_DIV) -#define IMAG_AXIS_STEP ((IMAG_HI - IMAG_LO) / AXIS_DIV) +#define REAL_AXIS_STEP ((PRINT_REAL_HI - PRINT_REAL_LO) / AXIS_DIV) +#define IMAG_AXIS_STEP ((PRINT_IMAG_HI - PRINT_IMAG_LO) / AXIS_DIV) #define IN_CHAR '*' #define OUT_CHAR ' ' @@ -25,9 +29,9 @@ int mandelbrot_in_set(double complex c) void mandelbrot_print(void) { - for (double i = IMAG_LO; i < IMAG_HI; i += IMAG_AXIS_STEP) + for (double i = PRINT_IMAG_LO; i < PRINT_IMAG_HI; i += IMAG_AXIS_STEP) { - for (double r = REAL_LO; r < REAL_HI; r += REAL_AXIS_STEP) + for (double r = PRINT_REAL_LO; r < PRINT_REAL_HI; r += REAL_AXIS_STEP) { if (mandelbrot_in_set(r + i * I) == -1) putchar(IN_CHAR); -- cgit