image image


Der symmetrische Pythagorasbaum mit Processing.py und der Turtle

Eigentlich wollte ich ja Processing.py’s Turtle-Modul erst einmal eine Weile ruhen lassen und mich anderen Themen widmen, aber auf den Seiten von Tigerjython.ch habe ich ein Bespiel entdeckt, wie man einen symmetrischen Pythagorasbaum mit der Turtle zeichnen kann. Das mußte ich dann doch sofort auch in Processing.py implementieren:

image

Den Pythagorasbaum hatte ich ja vor über drei Jahren schon einmal (und bunter) in Processing.py und in der NodeBox implementiert. Leider besitzt Leah Buechleys Turtle keine fill()-Methode und ich habe auch nicht herausgefunden, wie man Processings fill()-Funktion auf die Schildkröte anwendet.

Daher hier erst einmal der Quelltext:

add_library('Turtle')
import math

def setup():
    global p
    size(640, 480)
    this.surface.setTitle("Pythagorasbaum")
    background(50)
    strokeWeight(1)
    stroke(150, 255, 100)
    p = Turtle(this)
    noLoop()

def draw():
    p.penUp()
    p.goToPoint(width/2 - 50, height - 50)
    p.penDown()
    tree(100)
    print("I did it, Babe")
    
def tree(s):
    if s < 2:
        return
    quadrat(s)
    p.forward(s)
    s1 = s/math.sqrt(2)
    p.left(45)
    tree(s1)
    p.right(90)
    p.forward(s1)
    tree(s1)
    p.back(s1)
    p.left(45)
    p.back(s)

def quadrat(s):
    for _ in range(4):
        p.forward(s)
        p.right(90)

Soweit ich mich erinnere, kann CPythons Turtle Polygone, die die Schildkröte gezeichnet hat, farbig ausfüllen. Ich glaube, ich muß als nächstes mal wieder damit spielen. Still digging!


(Kommentieren) 

image image



Über …

Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter Rentner, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!

Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.

Der Besuch dieser Webseite wird aktuell von der Piwik Webanalyse erfaßt. Hier können Sie der Erfassung widersprechen.

Diese Seite verwendet keine Cookies. Warum auch? Was allerdings die iframes von Amazon, YouTube und Co. machen, entzieht sich meiner Kenntnis.


Werbung

Diese Spalte wurde absichtlich leergelassen!


Werbung


image  image  image
image  image  image


image