Natürlich hat mich – nach meinen Anfangserfolgen – Py5 zusammen mit dem Thonny-Plugin von Tristan Bunn nicht zur Ruhe kommen lassen. Ich wollte die Angelegenheit unbedingt mit einem weiteren Processing.py-Skript aus dem Buch »Math Adventures with Python« von Peter Farrell testen. Diesmal war es ein Skript, indem die Konstruktion der Sinuskurve visualisiert wurde (Seite 110 ff). Mutig geworden habe ich die Visualisierung optisch noch ein wenig aufgehübscht:
# Circle Sine Wave
# nach Peter Farrell: »Math Adventures with Python« p110ff.
R1 = 100 # Radius großer Kreis
R2 = 5 # Radius kleine Kreise
t = 0 # Zeit-Variable
circle_list = []
def setup():
size(600, 600)
def draw():
global t, circle_list
background(132, 144, 163)
translate(width/4, height/2) # Linkes Viertel des Fensters
no_fill() # Keine Farbe im großen Kreis
stroke(0) # Outline: schwarz
circle(0, 0, 2*R1)
fill(250, 0, 0, 150) # Füllfarbe des kleinen Kreises
y = R1*sin(t) # auf dem großen Kreis
x = R1*cos(t)
circle(x, y, 2*R2)
# Addiere einen Punkt zur Liste, aber nicht mehr als 200
circle_list = [y] + circle_list[:199]
no_stroke()
fill(0, 255, 0, 150) # sattes grün – leichte Transparenz)
# Schleife über die Liste, um den Trail zu zeichnen
for i, c in enumerate(circle_list):
circle(200 + i, c, R2)
stroke(0, 250, 0) # Grün für die Verbindungslinie …
line(x, y, 200, y)
fill(0, 250, 0, 150) # und den kleinen Endpunkt
stroke(0)
circle(200, y, 2*R2)
t += 0.05
Das Py5 »echtes« Python 3 und damit UTF-8-fest ist, habe ich im Quellcode gnadenlos ausgenutzt, indem ich deutsche Kommentare mit all ihren schönen Umlauten eingepflegt habe. Davon wird zwar wegen der internationalen Verständlichkeit eigentlich – und mit recht – abgeraten, aber ey, das ist mein Spielzeug und damit kann ich demonstrieren, daß es wirklich Python 3 ist.
Ansonsten ist eigentlich nur noch die Zeile
circle_list = [y] + circle_list[:199]
interessant. Denn mit diesem Slicing Operator wird sichergestellt, daß die Liste nie mehr als 200 Elemente enthält.
Außerdem bin ich noch einer weiteren Idee von Tristan Bunn gefolgt, und habe mit diesen kleinen Änderungen in den Einstellungen von Thonny (UI Theme: Clean Dark
und Syntax Theme: Default Light
) das Look and Feel von Thonny ein wenig dem Look and Feel von Processings PDE/IDE angepaßt.
Das ist zwar vermutlich schon bald obsolet, weil das angekündigte Processing 4 in der PDE – glaubt man den Screenshots – ein hellblaues Erscheinungsbild haben wird, aber für langjährige Nostalgiker wie mich ist es dennoch nett.
War sonst noch was? Ach ja, den Quellcode gibt es wie immer in meinem GitHub-Repositorium.
Ü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!