Also ich würde versuchen, das ganze etwas anders zu lösen. Hab mir jetzt den Code nicht wirklich angeguckt, aber hatte mir darüber schonmal ein wenig Gedanken gemacht. Bei einer Sinusfunktion geht das sogar relativ einfach über die Umkehrfunktion. Um die exakten Schrittzeitpunkte berechnen zu können braucht man eine Funktion der Zeit in Abhängigkeit vom Weg (also anders herum, als gewohnt). Wenn jetzt also meinetwegen x(t)=R*sin(a*t) und y(t)=R*cos(a*t) sind, dann ließe sich t1(x)=asin(x/R)/a und t2(y)=acos(x/R)/a berechnen. t1 und t2 sind die Zeitfunktionen der jeweiligen Achsen, nun könnte man für die x- und y-Werte die aktuelle Schrittzahl*Schrittweite nehmen und wenn man davon die Differenz mit dem nächsten Schritt, also Schrittweite*(aktuelle Schrittzahl+1), nimmt, erhält man immer die nötige Zeitdifferenz zum nächsten Schritt. Was höchstens Probleme machen könnte ist der Rechenaufwand zwischen den einzelnen Schritten, sowie beide Achsen simultan laufen zu lassen. Da fiele mir jetzt aber auch nichts zu ein.
Lesezeichen