Dieter: C++ Kreispunktberechnung im Koordinatensystem

Beitrag lesen

Hallo Dieter,

vielleicht verstehe ich dich ja falsch, aber versuch mal

cout << cos((n-counter)*b+phi0)*r << endl;    // X-Koordinate
     cout << sin((n-counter)*b+phi0)*r << endl;    // Y-Koordinate

Hallo Jürgen!

Kannst du mir bitte noch sagen was "phi0" ist?

Ah ok, phi0 ist der Versatz im Bogenmaß.
Für einen Versatz auf 12 Uhr als Startpunkt wäre es also

unsigned int n = 60;
unsigned int counter = 0;
float r = 0.5f;
float b = 2*M_PI/n;

while(counter < n)
{
    cout << cos((n-counter)*b+(0.5f*M_PI))*r << endl;    // X-Koordinate
    cout << sin((n-counter)*b+(0.5f*M_PI))*r << endl;    // Y-Koordinate
    counter++;
}

Das funktioniert super. Danke!
Aber wenn ich die Berechnung anders durchführe:

cout << cos((n-counter)*b+((2/360*90)*M_PI))*r << endl;    // X-Koordinate
    cout << sin((n-counter)*b+((2/360*90)*M_PI))*r << endl;    // Y-Koordinate

kommen wieder falsche Werte raus.

ein cout sagt mir, dass 2/360*90 = 0 wäre. Wobei ich 0.5 erwartet hätte.

Was mache ich da falsch?