|
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); |