2 Punkte auf Kreis welche Drehrichtung?

Hallo,
Ich habe folgendes Problem:
Ich habe 3 Punkte:
2 liegen auf einem Kreis:
A (a1, a2)
B (b1, b2)
Und den Mittelpunkt:
M (m1, m2)
Wie man sieht, ist das ganze 2-dimensional-vektoriell betrachtet.

Nun wüsste ich gerne, ob man im Uhrzeigersinn geht, um vom Punkt A zu B zu gelangen oder nicht. Dabei betrachte ich immer den kürzesten Weg.
Beispiel:
A (0, 5)
B (5, 0)
M (0, 0)
-> Uhrzeigersinn

Bsp 2:
A (0, 5)
B (-5, 0)
M (0, 0)
-> gegen den Uhrzeigersinn

Ich habe versucht, erst folgendes Versucht:
Winkel((0, -1) & MA) - Winkel ((0, -1) & MB) Uhrzeigersinn
> 0 -> gegen den Uhrzeigersinn

Dies funktioniert teilweise auch, nur nicht immer, sobald der Winkel nach oben > 180° ist, müsste die Bedingung umgedreht werden.

Gibt es eine einfache Möglichkeit, herauszufinden, in welche Richtung man fahren muss, um zum nächsten Punkt zu kommen?

Gruß
Julian

hi,

Ich habe folgendes Problem:
Ich habe 3 Punkte:
2 liegen auf einem Kreis:
A (a1, a2)
B (b1, b2)
Und den Mittelpunkt:
M (m1, m2)
Wie man sieht, ist das ganze 2-dimensional-vektoriell
betrachtet.

Nun wüsste ich gerne, ob man im Uhrzeigersinn geht, um vom
Punkt A zu B zu gelangen oder nicht. Dabei betrachte ich immer
den kürzesten Weg.
Beispiel:
A (0, 5)
B (5, 0)
M (0, 0)
-> Uhrzeigersinn

Bsp 2:
A (0, 5)
B (-5, 0)
M (0, 0)
-> gegen den Uhrzeigersinn

Ich habe versucht, erst folgendes Versucht:
Winkel((0, -1) & MA) - Winkel ((0, -1) & MB)
Uhrzeigersinn
> 0 -> gegen den Uhrzeigersinn

Dies funktioniert teilweise auch, nur nicht immer, sobald der
Winkel nach oben > 180° ist, müsste die Bedingung umgedreht
werden.

Gibt es eine einfache Möglichkeit, herauszufinden, in welche
Richtung man fahren muss, um zum nächsten Punkt zu kommen?

ja. das keuzprodukt oder vektorprodukt.

fass die vektoren als räumliche auf, indem du als z-koordinate eine 0 ergänzt. berechne dann das vektrorprodukt. zeigt es nach unten (negative koordinaten), ist die drehung im uhrzeigersinn. nach oben gegen.

hth
m.

Hallo,

ja. das keuzprodukt oder vektorprodukt.

fass die vektoren als räumliche auf, indem du als z-koordinate
eine 0 ergänzt. berechne dann das vektrorprodukt. zeigt es
nach unten (negative koordinaten), ist die drehung im
uhrzeigersinn. nach oben gegen.

Ich nehme an, du meinst das Kreuzprodukt (AM x BM)? Das funktioniert leider nicht. Es erkennt lediglich, wo sich der Startpunkt auf dem Kreis befindet.

Muss ich den AM und den BM Vektor eventuell um dem M Vektor verschieben, damit der der Mittelpunkt wieder auf (0/0) liegt?

Leider verstehe ich den Hintergrund nicht, wieso das gelten soll. Deswegen weiß ich auch nicht, wo da jetzt der Fehler liegt…

Gruß
Julian

hi,

ja. das keuzprodukt oder vektorprodukt.

Ich nehme an, du meinst das Kreuzprodukt (AM x BM)?

eher MA x MB, aber wurscht.

Das
funktioniert leider nicht. Es erkennt lediglich, wo sich der
Startpunkt auf dem Kreis befindet.

nein, das kreuzprodukt „erkennt“ wesentlich mehr. es steht auf beide „faktorvektoren“ normal und bildet mit ihnen ein sog. „rechtssystem“.
z.b. http://de.wikipedia.org/wiki/Kreuzprodukt

hth
m.

Hallo,

Ich nehme an, du meinst das Kreuzprodukt (AM x BM)?

ja, genau.

(A - M)\times(B - M) =
\left(
\begin{array}{c}
a_x-m_x \ a_y-m_y \ 0
\end{array}
\right)
\times
\left(
\begin{array}{c}
b_x-m_x \ b_y-m_y \ 0
\end{array}
\right)

=
\left(
\begin{array}{c}
0 \ 0 \ (a_x-m_x)(b_y-m_y) - (a_y-m_y)(b_x-m_x)
\end{array}
\right)

Das ist schon alles, was Du zur Lösung Deines Problems wissen musst.

Berechne den Term

z := (a_x-m_x)(b_y-m_y) - (a_y-m_y)(b_x-m_x)

also die z-Komponente von (A – M) × (B – M) und stelle fest, ob z positiv, gleich Null oder negativ ist. Ist z clockwise), für z > 0 umgekehrt herum („mathematisch positiv“, engl. counterclockwise), und für z = 0 liegen A und B genau gegenüber, d. h. A, B und M auf einer Geraden.

Es fällt Dir schwer zu glauben, dass das so funktionieren soll, weil doch nirgendwo was mit Winkeln gerechnet wurde? Dann probiers aus und überzeuge Dich von der Power des Kreuzprodukts :smile:

Gruß
Martin