image image


image

Py5: Noch mehr mit »mit« ist besser als mit ohne »mit«

Ich mußte noch ein wenig mit meiner Entdeckung des with-Statements in Py5 herumspielen, dieses Mal mit with push_matrix(). Dafür habe ich mich eines Processing.py-Sketches aus dem Buch »Math Adventures with Python« von Peter Farrell bedient (San Francisco (No Starch Press) 2019, p87ff).

Seltsamerweise nutzte Peter Farrell das with pushMatrix()-Staatement nicht (obwohl es zu festverdrahteten Sprachumfang von Processing.py gehört), sondern blieb ganz konvenionell bei dem Befehlspaar pushMatrix()popMatrix(). Das mußte ich in meiner Py5-Fassung natürlich ändern (Besserwisserei an):

# Rotating Squares
# nach einem Sketch von Peter Farrell
# Math Adventures with Python, San Francisco (No Starch Press) 2019, p87ff

WIDTH = 600
HEIGHT = 600

t = 0

def setup():
    size(WIDTH, HEIGHT)
    window_move(1400, 30)
    window_title("Rotating Squares")
    rect_mode(CENTER)

def draw():
    global t
    background(230, 226, 204)
    translate(width/2, height/2)    
    rotate(radians(t))
    for i in range(12):
        with push_matrix():
            translate(200, 0)
            rotate(radians(2*t))
            if i%2:
                fill(160, 51, 46)
            else:
                fill(50, 80, 105)
            rect(0, 0, 50, 50)
        rotate(radians(360/12))
    t += 1

(Besserwisserei aus.)

Py5 mit Thonny macht wirklich Spaß und gibt das Feeling der Processing-PDE gut wieder. Ich habe da noch ein paar Sketche in der Hinterhand. 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