Hi, ich habe zwar beim schnellen drüberschauen noch nichts gefunden, aber es wäre bestimmt hilfreich wenn du zeigen würdest wie oft (bzw. wo) die Funktion aufgerufen wird und wie deine globalen Variablen definiert sind.

Warum du allerdings vorher multiplizierst und dannach wieder dividierst ist mir nicht ganz klar.
Wenn du versuchst mit Integer-Rechnungen Performance rauszuholen dann ist das die falsche Stelle
die Sinus/Cosinus Berechnungen dauern vermutlich länger als der Rest der Funktion.
Also entweder alles Fixkomma oder alles Gleitkomma

LG

Edit: versuche globale variablen möglichst zu vermeiden (außer wenn es nicht anders möglich ist, z.b bei Interrupts) und verwende wenn du die Variablen selbst verändern willst lieber Zeiger.