import pygame N = 20 RATIO = 1 / 1.45 def farbe(n): c = pygame.Color(0, 0, 0) c.hsva = (int(exp(n) / exp(N) * 360.0), 100, 100, 0) t.set_color(c.r / 255, c.g / 255, c.b / 255) def kurve(n): if (n >= N): return l = 10 / ((n + 1)**RATIO) farbe(n) t.forward(l) t.right(45) kurve(n + 1) t.left(90) kurve(n + 1) t.right(45) t = NinjaTurtle((1280, 1024)) t.set_zoom(0.1) kurve(0)
def ast(t, n, i, m): if n == N: return farbe(t, n) #astlänge = 100/(n*(i**0.2)) if m==0 else uniform(-10,+10)+70/(n*(i**0.2)) astlänge = 100 / (n * (i**0.2)) astbreite = 0.5 * (N - n) t.set_width(astbreite) t.forward(astlänge) t.left(30) ast(t, n + 1, i, 0) t.right(60) ast(t, n + 1, i, 1) t.left(30) farbe(t, n) t.set_width(astbreite) t.backward(astlänge) if (__name__ == "__main__"): t = NinjaTurtle((1024, 768)) i = 1 t.set_zoom(1.0) ast(t, 1, 1, 0) t.right(45) i += 1