我有这个算法可以计算点 (x0,y0) 的 mandelbrot 值(我认为 x0 和 y0 介于 -1 和 1 之间,不是很重要)。scale
当不是太大时,这一切都很顺利,但是在较高的值时scale
,返回的值非常不准确,我的图形输出开始变得怪异。我如何预测scale
会发生什么价值?
public static byte CalculateMandelbrot(double x0, double y0,double scale)
{
x0 /= scale;
y0 /= scale;
double y = 0;
double x = 0;
byte i = 0;
while (x * x + y * y < 4)
{
double tx = x;
x = x * x - y * y + x0;
y = 2 * tx * y + y0;
i++;
if (i == 0xFF) break;
}
return i;
}