sich in kompexeren Programmcodes zu orientieren und gewissen Anpassungen vornehmen. Die Formeln, die in den nachfolgenden Beispielen vorkommen, wurden von bekannten Mathematikern erfunden.
MUSTERBEISPIELE
Fraktale sind computergenerierte Bilder, die eine Selbstähnlichkeit aufweisen, d.h. bei denen Teilbilder eine verkleinerte Kopie des Gesamtbildes sind. Der Begriff fractal wurde 1975 von Mathematiker Benoit Mandelbrot eingeführt und stammt aus dem Lateinischen fractus (gebrochen), was sich auf die sogenannte fraktale Dimension bezieht. In der traditionellen Geometrie ist eine Linie eindimensional, eine Fläche zweidimensional und ein Raum dreidimensional. Fraktale Bilder weisen meist eine nicht-ganzzahlige Dimension auf. Interessante Bilder liefern Fraktale, die durch eine nichtlineare Transformation entstehen. Solche Fraktale werden in der Regel iterativ berechnet und verwenden häufig komplexe Zahlen.
Im Folgenden findet man den vollständigen Programmcode zu einigen bekannten Fraktalen ohne weiteren Kommentar. Auch ohne eingehendes Studium des Programmcodes kann man sich an den schönen Bildern freuen und Frakale mit anderen Farben erstellen.
Beispiel 1: Farn
Programm:
# Farn.pyfrom gpanel import *
import random
def farn():
z = 0
n = 0
while n < nbPoints:
r = random.random()
c = "black"if r < 0.01:
c = "yellow"
z = f(z, 0, 0, 0, 0.16, 0, 0) # Stielelif r < 0.86:
c = "lime"
z = f(z, 0.85, 0.04, -0.04, 0.85, 0, 1.60) # symmetryelif r > 0.86 and r < 0.93:
c = "red"
z = f(z, 0.20, -0.26, 0.23, 0.22, 0, 1.60) # left leaveselif r > 0.93:
c = "blue"
z = f(z, -0.15, 0.28, 0.26, 0.24, 0, 1.44) # right leaves
setColor(c)
point(z)
n += 1
def f(z, a, b, c, d, e, f):
re = a * z.real + b * z.imag + e
im = c * z.real + d * z.imag + f
return complex(re, im)
makeGPanel(-3.5, 3.5, 0, 10)
bgColor("black")
nbPoints = 40000
farn()