Я могу сгенерировать изображение множества Мандельброта размером 400x400 от minReal до maxReal и от minImaginary до maxImaginary. Так,
makeMandel(minReal, maxReal, minImaginary, maxImaginary);
Мне нужно изменить его, чтобы я мог,
makeMandel(centerX, centerY, Zoomlevel);
// generates a region of the mandelbrot set centered at centerX,centerY at a zoom level of Zoomlevel
(Учитывая, что уровень масштабирования представляет собой расстояние между пикселями и задается формулой Уровень масштабирования n = 2 ^ (-n), так что уровень масштабирования 1 означает, что пиксели находятся на расстоянии 0,5 единицы друг от друга, уровень масштабирования 2, 0,25 и т. д....)
Мой вопрос: как мне рассчитать аргументы первой функции makeMandel из аргументов второй? Я знаю, что первая функция способна масштабировать и перемещаться, но я не знаю, как вычислить правильные числа для любого заданного центра и уровня масштабирования.
Я пытаюсь заставить это работать уже более трех дней, и я действительно запутался. Я пытался рисовать таблицы и т. д. на бумаге и работал над этим. Я прочитал большинство документов, которые вы найдете в Google при поиске набора Мандельброта, и пару прошлых вопросов о стеке, но я все еще не понимаю. Пожалуйста, помогите мне.