示例#1
0
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)
示例#2
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