返回列表 回复 发帖
(z-1)(z+1)(z-c)(z+c)
newton_M
New1.jpg
New2.jpg
New3.jpg
New4.jpg
New7.jpg
New6.jpg
New5.jpg
New8.jpg
New9.jpg
NewA.jpg
两位板友的美图确实美的让人眼花瞭乱,太美了。
(z-6)(z+6)(z-c)(z+c)
newton_M
New1.jpg
New2.jpg
New3.jpg
New4.jpg
New5.jpg
New6.jpg
New7.jpg
New8.jpg
New9.jpg
NewA.jpg
f(z)=c^2z^4-(c^4+1)z^2+c^2
newton_M
1.jpg
2.jpg
3.jpg
4.jpg
5.jpg
6.jpg
7.jpg
8.jpg
9.jpg
A.jpg
1.jpg
2.jpg
3.jpg
5.jpg
6.jpg
7.jpg
8.jpg
您的这些我都没做出来,弄了这几个
真的很漂亮,高手就是高手:
着色:
            r=log(abs(log(e.x*e.x+e.y*e.y))/eM)/log(2);
            t=(e.t-r)/(2*pi);
            r=128*(1+sin(t));
            g=128*(1-cos(t));
            b=128*(1-sin(t));

变换:
       z→ 'z','z^2','1/z','1/z^2','z-1/z','z+1/z','z-1/z^2','z+1/z^2','√z','1/√z','z-1/√z','z+1/√z' ......,
        c→ 'c','c^2','1/c','1/c^2','c-1/c','c+1/c','c-1/c^2','c+1/c^2','√c','1/√c','c-1/√c','c+1/√c'......

然后辅之以:

      sin , ln , exp , sinh......

我所能知道的就这些,你要去作的话,那肯定精彩多了。
这是几个圆的UF代码,改变R,Q,和start的值,可以变出不同的形状,样子还行。

Nova2 {
;F(X)=C^2Z^4-(C^4+Q)Z^2+C^2
; R=0.03,Q=0.2  z = z - 1/z,start=0.64
init:
  complex zold = (0,0)
  complex z = @start
  complex Q = @Q
  complex R = @R


  c = #pixel
  z = z - 1/z

loop:
  zold = z

  z = z - ((c^2*z^4 + (c^4 + Q)*z^2+c^2 - R)/(4*c^2*z^3 + 2*(c^4 + Q)*z))


bailout:
  |z - zold| > @bailout

default:
  title = "Nova (Mandelbrot)"

  maxiter = 200
  periodicity = 0
  center = (0,0)
  magn = 1

  param R
    caption = "R"
    default = 0.03
  endparam

  param Q
    caption = "Q"
    default = 0.7
  endparam

param start
    caption = "start"
    default = (0.64,0)
  endparam

  param bailout
    caption = "Bailout"
    default = 0.00001
endparam


switch:
  type = "Nova "
  seed = #pixel
  power = @power
  bailout = @bailout
}
(z-1)(z-1)(z+1)(z+1)
newton_M
1.jpg
2.jpg
3.jpg
4.jpg
5.jpg
6.jpg
7.jpg
8.jpg
9.jpg
a.jpg
158# xklppp


能分享一下代码不?
159# lnszdzg

para:["n(z-q)^2(z+q)^2",-3.0,3.0,-2.0,2.0,-3.0,3.0,-2.0,2.0],
    default:"z<>1",
    func:function(x,y,a,b)
    {
        var i=0,e=[{x:x,y:y}],t=0;
        var Nta=Nt*a,Ntb=Nt*b,Nva=(1-Nt)*a,Nvb=(1-Nt)*b;//nova/newton 开关
        var qr2=qR*qR-qI*qI,qi2=2*qR*qI;
        var qr4=qr2*qr2-qi2*qi2,qi4=2*qr2*qi2;
        if(M)x=zR,y=zI;
        if(Nt&&M)x=qR/sqrt(3),y=qI/sqrt(3);
        while(++i<iter)
        {
            var r2=x*x-y*y,i2=2*x*y;
            var r3=x*r2-y*i2,i3=r2*y+x*i2;
            var r4=x*r3-y*i3,i4=r3*y+x*i3;
            var x1=r4-2*(qr2*r2-qi2*i2)+qr4+Nta;
            var y1=i4-2*(qr2*i2+qi2*r2)+qi4+Ntb;
            var x2=4*r3-4*(qr2*x-qi2*y);
            var y2=4*i3-4*(qr2*y+qi2*x);
            var rr=x2*x2+y2*y2,zr=(x1*x2+y1*y2)/rr,zi=(x2*y1-x1*y2)/rr;
            var xx=(Rx*x-Ry*y)-rR*zr+rI*zi+Nva,yy=(Rx*y+Ry*x)-rR*zi-rI*zr+Nvb;
            if(((xx-x)*(xx-x)+(yy-y)*(yy-y))<dem)t=i,i=iter;
            x=xx,y=yy;
            if(M==3)e.push({x:x,y:y});//完整轨迹用于 Julia 粒子
        }
        if(M==3)return e
        else return {t:t,x:x,y:y}
    }
        变量中带 r 或 R 的为实部,带 i 或 I 的为虚部


    var scanZplane=function()//扫描 z 平面
    {
        var c=transPlane(ra,ib,_C);//变换 c 平面
        for(var iy=yMax,y=0,i=0;y<height;iy-=dy,y++)
            for(var rx=xMin,x=0;x<width;rx+=dx,x++,i+=4)
        {
            var z=transPlane(rx,iy,_Z));//变换扫描平面
            var co=setColor(iterator(z.r,z.i,c.r,c.i),z.r,z.i);//至调色板
            for(var k=0;k<co.length;k++)pix[i+k]=co[k];
        }
    }
    var scanCplane=function()//扫描 c 平面
    {
        for(var b=yMax,y=0,i=0;y<height;b-=dy,y++)
            for(var a=xMin,x=0;x<width;a+=dx,x++,i+=4)
        {
            var c=transPlane(a,b,_C);//变换扫描平面
            var co=setColor(iterator(zR*c.r,zI*c.i,c.r,c.i),c.r,c.i);//至调色板
            for(var k=0;k<co.length;k++)pix[i+k]=co[k];
        }
    }
返回列表