Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import PIL # Alt + Enter
- from PIL import Image
- # pip install pillow
- def draw_something(image, size, frame):
- a = [[0] * size for _ in range(size)]
- mandelbrotness = frame
- for i in range(size):
- for j in range(size):
- # множество Жюлиа: z = разные точки прямоуг-ка; c = const
- # множество Мандельброта: z = 0; c = разные точки прямоуг-ка
- our_pixel = (i - size / 2) / (size / 2) + (j - size / 2) / (size / 2) * 1j
- z0 = (1 - mandelbrotness) * our_pixel
- c = (1 - mandelbrotness) * (0.239 + 0.566j) + mandelbrotness * our_pixel
- z = z0
- # Benoit B. Mandelbrot
- for k in range(255):
- z = z * z + c
- if abs(z) > 10:
- break
- a[i][j] = k
- print(z)
- b = sum(a, [])
- b.sort()
- sum_iter = sum(b)
- average_sum = 127 * size * size
- median = b[len(b) // 2] # → 127
- for i in range(size):
- for j in range(size):
- iters = a[i][j]
- color = iters * average_sum // sum_iter
- image.putpixel((i, j), (0, 0, min(color, 255)))
- size = 300
- frames = 50
- for frame in range(frames + 1):
- image = Image.new("RGB", (size, size), (255, 255, 255))
- draw_something(image, size, frame / frames)
- image.save("generated" + str(100 + frame) + ".png")
- # image.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement