Winkel zwischen zwei Punkten

Neue Frage »

SynTraX Auf diesen Beitrag antworten »
Winkel zwischen zwei Punkten
Hallo alle miteinander,

Ich würde gerne den Winkel zwischen zwei Punkten in einem Koordinatensystem berechnen. Ich habe bereits herausgefunden, dass ich über den Arkustangens genau diesen Winkel berechnen kann.
Mein Beispiel dazu:

[attach]31353[/attach]



Die Formel die ich zur Berechnung des Winkels verwende ist:


Nach umgestellt ergibt sich somit:

Der Winkel zwischen und lässt sich damit wunderbar berechnen:







Mein Problem ist nun, das wenn die Punkte dieselbe Y-Koordinate besitzen (Wie bei den Punkten und ) die Gleichung unlösbar wird da ich durch 0 teile:




Der Winkel wäre aber eigentlich 90°.
Und hier liegt mein Problem... Wie kann ich für zwei beliebige Punkte, egal in welchem Quadranten sie liegen, den Winkel zwischen diesen beiden Punkten ermitteln. Dabei ist es egal ob der Winkel im Bezug zur X- oder Y-Achse steht. Man kann ja einfach 90° drauf addieren.
Für einen kleinen Denkanstoß wäre ich sehr dankbar.

Viele Grüße
SynTraX

Edit opi: Bild angehängt, Link entfernt. Bilder bitte immer direkt im Board hochladen.
opi Auf diesen Beitrag antworten »

Hm... verwirrt
Es gibt keinen Winkel zwischen zwei Punkten, sondern nur zwischen zwei Geraden, Strecken, Vektoren o.Ä.
Deine Winkelformel berechnet den Steigungswinkel einer linearen Funktion, die nützt Dir hier leider nichts. Mit den Vektoren etc. meinst Du anscheinend die Ortsvektoren der Punkte. Der Winkel zwischen und ist Null, da die Vektoren lin. abhängig sind.

Was genau möchtest Du berechnen? Den Winkel aus einer Geraden durch zwei Punkte mit einer der Achsen?
SynTraX Auf diesen Beitrag antworten »

Ja ich weis, das ist eine verzwickte Sache...
Prinzipiell möchte ich mit einem Roboter die Route zwischen mehreren Punkten ablaufen. Und ich besitze die Koordinaten dieser Punkte relativ zum Roboter. Ich muss jedoch den Winkel kennen, weil ich ja wissen muss in welche Richtung der Roboter sich drehen muss... Und dann wieder vom 2. Punkt zum 3. und so weiter...
opi Auf diesen Beitrag antworten »

Verstehe ich das richtig, daß z.B. der Roboter von A nach B marschiert und dann der Winkel auf dem Weg zu Punkt C benötigt wird?

[attach]31354[/attach]

Für den Winkel zwischen zwei Vektoren gibt es eine Formel.
SynTraX Auf diesen Beitrag antworten »

Ja das ist korrekt. Nur, dass der Winkel von A nach B auch nicht bekannt ist. Der Roboter (Punkt A) schaut im Prinzip Parallel zur Y-Achse gerade nach vorne und soll sich zu Punkt B drehen und dorthin laufen. Die Entfernung zu Punkt B kenne ich (Euklidische Distanz). Bei B angekommen geht dasselbe spiel wieder von vorne los.
[Nachtrag]:
Die Formel hatte ich mir auch schon ergoogelt... Ich war nur der Ansicht, das sie mir nur was bringt um den Winkel zwischen B und C zu errechnen. Dafür benötige aber ja 2 Vektoren, also in jedem Fall habe ich dann 3 Punkte. Was wenn ich jedoch nur 2 Punkte habe?
Ich hab das so verstanden das ich mit der Formel für z.B. A und C folgenden Winkel erhalte:
[attach]31355[/attach]
opi Auf diesen Beitrag antworten »

Der Winkel nützt Dir bei Deinem Problem nichts, da hast du recht.
Du benötigst den Winkel zwischen einer Geraden durch Start- und Zielpunkt und einer der Achsen als Referenz. Problem: Damit der Roboter weiß, ob er nach "vorne oder hinten" laufen soll, sind Fallunterscheidungen notwendig.

Schaue Dir mal den Artikel über Polarkoordinaten an, besonders diesen Abschnitt. Das sollte eigentlich genau Dein Problem lösen.
 
 
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »