RosettaCodeData/Task/Julia-set/Pluto/julia-set.pluto
2026-04-30 12:34:36 -04:00

32 lines
810 B
Text

require "bitmap"
local max_iters = 300
local zoom = 1
local move_x = 0
local move_y = 0
local cx = -0.7
local cy = 0.27015
local w = 800
local h = 600
local bmp = bitmap.of(w, h, color.black, "Julia set")
local function create_julia()
for x = 0, w - 1 do
for y = 0, h - 1 do
local zx = 1.5 * (x - w / 2) / (0.5 * zoom * w) + move_x
local zy = (y - h / 2) / (0.5 * zoom * h) + move_y
local i = max_iters
while zx * zx + zy * zy < 4 and i > 0 do
local tmp = zx * zx - zy * zy + cx
zy = 2 * zx * zy + cy
zx = tmp
i -= 1
end
local c = bitmap.rgbColor(i % 256, i % 256, (i * 8) % 256)
bmp:set(x, y, c)
end
end
end
create_julia()
bmp:view()