test_mandelbrot.lua

changeset 4
caf89bc9100a
child 5
fa4d448b07d3
equal deleted inserted replaced
3:7f619444bc2a 4:caf89bc9100a
1 -- Code originally by Luiz Henrique de Figueiredo
2 -- At http://lua-users.org/lists/lua-l/2010-10/msg00754.html
3 -- Ported to lua-xpm by Matthew Wild
4
5 local xpm = require "xpm";
6
7 local N=255
8
9 local pic = xpm.new(N,N);
10
11 for i=1,N do
12 local y=2-4*(i-1)/(N-1)
13 for j=1,N do
14 local x=-2+4*(j-1)/(N-1)
15 local xc,yc=x,y
16 local X,Y=0,0
17 local p=0
18 for n=1,255 do
19 X,Y = X^2-Y^2+xc, 2*X*Y+yc
20 if X^2+Y^2>4 then p=n break end
21 end
22 pic:setpixel(j, i, ("#%02x%02x%02x"):format(p,p,p));
23 end
24 end
25
26 pic:render(io.stdout);

mercurial