Files
Mandelbrot/Mandelbrot.py

46 lines
1.1 KiB
Python

from PIL import Image
def mandelbrot (c, max_iter):
z = 0
for n in range(max_iter):
if abs(z) > 2:
return n # Wie schnell ist der Punkt entflohen?
z = z*z + c
return max_iter
width = 1000
height = 800
img = Image.new('RGB', (width, height))
# die komplexe Ebene definieren
x_min, x_max = -2 , 1
y_min, y_max = -1.2, 1.2
for x in range(width):
for y in range(height):
real = x_min + (x / width) * (x_max - x_min)
imag = y_min + (y / height) * (y_max - y_min)
c = complex(real, imag)
# print ("x-> ", x, " y-> ", y, " -> ",c)
m = mandelbrot(c, 400)
# Einfache Farbgebung: Schwarz für die Menge, Blau-Töne für den Rand
if m == 400:
color = (0, 0, 0)
else:
if m >200 and m < 233:
color = (0, 0, m * 2 % 255) # Blau-Gradient
elif m >233 and m < 266:
color = (0, m * 2 %255, 0) # Green-Gradient
else:
color = (m * 2 %255, 0, 0) # Red-Gradient
img.putpixel((x, y), color)
img.save("mandelbrot.png")
print("Bild wurde als mandelbrot.png gespeichert!")