Ich bin mir nicht sicher, ob es meine Mathematik oder meine Python ist, die nicht auf dem neuesten Stand ist ... aber der Code unten gibt unerwartete Ergebnisse. Es zeichnet immer noch einen Kreis von Punkten auf, aber in einer seltsamen Reihenfolge und einer ungleichmäßigen Weise (sogar unter Berücksichtigung von Int-Rundungsfehlern), dh die Punkte sind nicht sequentiell um den Kreis, wenn der Grad zunimmt, springen sie zu ganz unterschiedlichen Punkten auf dem Kreis ?Polar zu Cartesian seltsame Ergebnisse
def pol2cart(distance, angle):
x = distance * numpy.cos(angle)
y = distance * numpy.sin(angle)
return(x, y)
for fixedangle in xrange(0,360,10):
x, y = pol2cart(50,fixedangle)
print str(int(x)) + ", " + str(int(y)) + " " + str(fixedangle) + "\xb0"
Eine Probe des Ergebnisses:
50, 0 0°
-41, -27 10°
20, 45 20°
7, -49 30°
-33, 37 40°
48, -13 50°
-47, -15 60°
31, 38 70°
-5, -49 80°
-22, 44 90°
43, -25 100°
-49, -2 110°
40, 29 120°
-18, -46 130°
-9, 49 140°
34, -35 150°
-48, 10 160°
46, 17 170°
-29, -40 180°
Wenn 0 Grad = (50,0), dann würde ich 10 Grad erwarten, um (49,9) nicht zu sein (-41, -27). Und ich würde erwarten, dass 20 Grad ~ (47,18) und nicht (20,45) ... usw. sind. Nur mit diesen drei Beispielen kann man sehen, dass der kartesische Punkt in einen ganz anderen Quadranten gesprungen ist und dann wieder zurück. Selbst wenn meine Vorstellungen über die Drehrichtung oder den Startpunkt völlig falsch sind, erwarte ich immer noch, dass jeder Punkt vom 0 ° Startpunkt aus entweder im Uhrzeigersinn oder gegen den Uhrzeigersinn rotierend sequenziell ist. Außerdem können Sie anhand der "quadratischen" Winkel 90 und 180 feststellen, dass der kartesische Punkt in Bezug auf einen Mittelpunkt (0,0) nicht perfekt horizontal oder vertikal ist?
aah danke Jeremy. Und danke an alle: hat das erste angekreuzt :) – Simon