math: sin() ---> degrad??

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
Hannes-Spz
User
Beiträge: 123
Registriert: Sonntag 7. August 2005, 22:42

Ich arbeite gerade mit dem Polarkoordinatensystem.

Dabei ergeben sich x und y eines Punktes wie folgt:

x = r * cos( WINKEL )
y = r * sin( WINKEL )

Leider habe ich festgestellt, dass diese Art von Berechnung in meinem
Program im "Degrad" - Modus erforderlich ist, wobei Pythons math-Modul
lediglich im "Radiant" - Modus arbeitet... glaub ich jedenfalls

Kann mir also bitte jemand einen Vorschlag machen,
wobei man die 180° als float eingibt (bei Sinus) und 0 erhält, bzw.
1 (bei Cosinus) erhält?

Danke im Voraus
Hannes
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Code: Alles auswählen

from math import pi
x, y = r*cos(winkel*pi/180), r*sin(winkel*pi/180)
Ganz davon abgesehen nennt man den "Modus" (Du hast das Wort vom Taschenrechner, oder?) nicht Degrad, sondern einfach einen Winkel in Grad, während Python einen Winkel in Radianten (sprich 2pi = 360°) erwartet. Winkel in Radianten haben keine Einheit, was ihr großer Vorteil für die Analysis ist, und deswegen sind die mathematischen Funktionen im Normalfall auch für diesen Anwendungsfall definiert.
--- Heiko.
Benutzeravatar
Hannes-Spz
User
Beiträge: 123
Registriert: Sonntag 7. August 2005, 22:42

Wow, war ja mal wieder Rekordzeit :wink:
- Tausend Dank!
Es hat wunderbar funktioniert - ich bin einfach nicht drauf gekommen :oops:

(Modus... - Stimmt übrigens, ich saß ja auch die ganze Zeit mit dem
Taschenrechner vor dem PC :D )

liebe Grüße
Hannes
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Das math Modul hat dafür auch die Funktionen degrees() und radians().

Gruß, mawe
Antworten