Kreis in Pygame unterteilen

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
k-net
User
Beiträge: 24
Registriert: Donnerstag 22. Oktober 2020, 16:43

Okay, dann wär das ja geklärt. Ich wäre trotzdem für eine Erklärung, einen hilfreichen Link oder Tutorial dankbar. :mrgreen:
So sagt mit das nichts :wink:
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Die Position einer Kugel i zum Zeitpunkt t, ausgedrückt als Radius r_i ist

r_i = R * sin(t * f * math.pi * 2 + p_i)

Und dabei ist p_i der Phasenversatz der Kugel i, in radians. Wie groß die p_i sind kann ich nicht sagen, aber wenn man sich das mal aufmalt mit den Kugeln auf den Geraden und gleichzeitig in Kreisform, dann kann man das ja einfach rückwärts rechnen.

f ist einfach die Frequenz mit der das passieren soll in Hertz. Fuer den Effekt wahrscheinlich kleiner 1, also zB 0.1Hz.

Und R ist einfach dein grosser Kreisradius.
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

k-net hat geschrieben: Freitag 25. Juni 2021, 10:22 Okay, dann wär das ja geklärt. Ich wäre trotzdem für eine Erklärung, einen hilfreichen Link oder Tutorial dankbar. :mrgreen:
So sagt mit das nichts :wink:
viewtopic.php?f=9&t=52426

Danke für die Inspiration!
k-net
User
Beiträge: 24
Registriert: Donnerstag 22. Oktober 2020, 16:43

r_i = R * sin(t * f * math.pi * 2 + p_i)
Nachdem ich mir etliche Tutorials zum Einheitskreis, Sinus und Cosinus sowie zu Bewegung von Objekten in Python angeschaut habe, habe ich dennoch nicht den leisesten Hauch einer Ahnung, wie ich das umsetzen soll.
Danke für die Inspiration!
Bitte, freut mich wenn ich zumindest Ideengeber sein konnte. Leider verstehe ich nicht genug von Python (oder Mathe) um nachvollziehen zu können, was ihr da gemacht habt.
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Die Aufgabe erfordert halt diese Mathematik. Wenn du die selbst lösen willst, wirst du dir das erarbeiten müssen. Und jetzt hast du doch eine Musterlösung. Die kannst du studieren.
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

@k-net,

hast du dir denn die Schritte in dem anderen Topic mal angeschaut?
viewtopic.php?f=9&t=52426

Ich hatte ja extra versucht zu zeigen wie man von einem Basis-Pygame die einzelnen Schritte nach und nach entwickelt.
Kopier dir doch den Code und schau was er macht.
k-net
User
Beiträge: 24
Registriert: Donnerstag 22. Oktober 2020, 16:43

Ich habe mir das schon angeschaut, allerdings hatte ich noch nicht die Zeit, mich eingehend damit zu befassen. Einiges kann ich noch nicht nachvollziehen, das versuche ich noch zu verstehen. Wenn nicht, frage ich dich. Aber danke für die Erläuterungen!
Antworten