Mandelbrot坏图像精确色彩循环?

时间:2012-12-02 09:53:55

标签: php math mandelbrot

我在php中创建了一个mandelbrot,但是mandelbrot看起来有点奇怪。我怎样才能改进它? enter image description here

您可以在此处找到实时示例:http://www.phpdevpad.de/index.php?id=190

更新:Mandelbrot-Zoom 900次迭代:

enter image description here

更新:我使用这种计算mandelbrot的方法:

double Re_factor = (MaxRe-MinRe)/(ImageWidth-1);
double Im_factor = (MaxIm-MinIm)/(ImageHeight-1);

double newMinRe = MinRe + (Re_factor* x1);
double newMaxRe = MinRe + (Re_factor* x2);
double newMinIm = MinIm + (Im_factor* y1);
double newMaxIm = MinIm + (Im_factor* y2);

// and then I compute c - real and c- imag values

  for(unsigned y=0; y<ImageHeight; ++y) 
{ 
  double c_im = newMinIm - y*Im_factor;
  for(unsigned x=0; x<ImageWidth; ++x)
    {
      double c_re = newMinRe + x*Re_factor;

      // ComputeMandelbrot();

     }

 }
  1. http://warp.povusers.org/Mandelbrot/

2 个答案:

答案 0 :(得分:1)

1)您需要增加最大迭代次数。黑色区域太大了。

2)你可以将味觉改为更有趣的东西。 “蓝色”的突然变化很奇怪。

3)女性的默认情况应该更大......

答案 1 :(得分:1)

我猜测有些事情正在发生:

  1. 如前所述,对这样的分形进行60次迭代将无处可寻。试试6000。
  2. 你可能会遇到双精度的极限。这最终会导致块状,可能是错误的渲染,尤其是在缩放时。您需要一个确切的数字类型。 PHP本身并不提供真正的精确数据类型,因此除了与浮点数的性质相关的微小不一致之外,您还必须自己做一些有趣的数学运算作为整数或字节。