Berechnen Sie den Winkel (im Uhrzeigersinn) zwischen zwei Punkten

Ich habe nicht mit der Mathematik für eine lange Zeit und das sollte ein einfaches problem zu lösen.

Angenommen ich habe zwei Punkte Ein: (1, 0) und B: (1, -1).

Will ich mit einem Programm (Python oder was auch immer programming language) zur Berechnung der Winkel im Uhrzeigersinn zwischen Einem, der Ursprung (0, 0) und B. Es wird so etwas wie dieses:

angle_clockwise(point1, point2)

Beachten Sie, dass die Reihenfolge der Parameter ankommt. Da die Winkel-Berechnung werden im Uhrzeigersinn:

  • Wenn ich rufe angle_clockwise(A, B), es gibt 45.
  • Wenn ich rufe angle_clockwise(B, A), es gibt 315.

In anderen Worten, der Algorithmus ist wie folgt:

  1. Zeichnen Sie eine Linie (Linie 1) zwischen dem ersten Punkt mit param (0, 0).
  2. Zeichnen Sie eine Linie (Linie 2) zwischen dem zweiten Punkt param mit (0, 0).
  3. Kreisen der Linie 1 um (0, 0) im Uhrzeigersinn, bis es zu überschneidungen der Linie 2.
  4. Winkel, der den Abstand der Linie 1 gereist wird der zurückgegebene Winkel.

Gibt es eine Möglichkeit, code für dieses problem?

Lesen Sie en.wikipedia.org/wiki/Atan2 und Hinweis atan2 ist in docs.python.org/2/library/math.html
die Frage ist die Frage nach dem code zu implementieren, atan2,aber nicht das Konzept von atan2,warum schlage vor, um zu sehen, mehr über atan2?
"Wenn ich rufe, angle_clockwise(B, A), gibt es 335" - du meinst sicherlich 315 (360 - 45)?
Hoppla... ja, ich meine 315. Nun sehen Sie, wie lange habe ich noch nicht mit Mathe 😀

InformationsquelleAutor Eric | 2015-07-30

Schreibe einen Kommentar