![]() |
Re: Kreisförmige Bewegung eines Objektes
Zitat:
Cos ist Ankathete/Hypothenuse und berechnet das gleiche für die X-Position. Die Winkel, von denen der Cosinus bzw. Sinus berechnet wird, müssen in Delphi immer in Bogenmaß statt in Grad sein. Deswegen 2*Pi/360*Grad. Das könnte man alternativ auch mit DegToRad(Grad) machen. |
Re: Kreisförmige Bewegung eines Objektes
Hier nochmal ein ganz trivialer Erklärungsversuch: Du kennst doch bestimmt die Sache mit dem Einheitskreis und dem rechtwinkligen Dreieck darin. Die Hypotenuse dieses Dreieckes ist dabei nämlich immer der Kreis-Radius, der, wenn der Winkeln zur X-Achse langsam aber stetig zunimmt, dann natürlich auch jeden Punkt auf dieser Kreisbahn berühren kann. Und um nun rechnerisch zu diesen Punkten auf der Kreisbahn zu kommen, brauchst man jetzt nur noch mehr zu einer Ausgangsposition diejenigen Längen dazuaddieren, die dieser Radius (=Hypotenuse) jeweils auf die X- u. auf die Y-Achse projiziert ergibt. Und genau diese Projektionslängen sind nunmal die Ergebnisse dieser Sinus- und Kosinus-Funktionen... (Wie die jetzt mathematisch genau definiert sind, wird ja schon teilweise darüber beschrieben)
edit: Die obige Erklärung gilt, wenn die dort erwähnte Ausgangsposition (X0/Y0) immer der Kreismittelpunkt ist ...und daher musste das X0 vor dem eigentlichen Start des Timers dann eben auch immer zuerst noch auf diesen Kreismittelpunkt umgesetzt werden muss (X0 := Label1.left - 40)! ~~~ nur der absoluten Nachvollziehbarkeit halber ~~~ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz