Einheitskreis: Punkte durch variable Winkel berechnen

nemexx

Cadet 3rd Year
Registriert
März 2011
Beiträge
47
Guten Morgen,
ich stehe auf dem Schlauch, ich hoffe hier ist jemand recht fit in Mathe.

Was ich möchte?
Anhand eines bekannten Punkts (PunktA) auf einem Einheitskreis einen anderen Punkt (PunktB) berechnen durch angabe eines Winkels.

Gegeben:
x, y = max. 100
x, y = min. -100
Einheitskreis
PunktA = (-23|97)
Winkel alpha = 135°

Gesucht:
Koordinaten von PunktB

Hat jemand eine Formel und erklärung für mich?

punkte.jpg
 
Ich würde den Punkt A als Vektor im zweidimensionalen Raum verstehen und dann mit einer geeignet eingestellten Rotationsmatrix multiplizieren. Das Ergebnis ist ein Vektor, der die gesuchten Zielkoordinaten enthält.
 
  • Gefällt mir
Reaktionen: BeBur, iNFECTED_pHILZ und Nilson
Ausnahmsweise noch die Formel zur Erklärung im vorherigen Beitrag:
m*a = b, wobei
Code:
a = [-23.3956; 97.2247]
m = [-0.707 0.7072; -0.7072 -0.7070]
b = [85.3016; -52.1885]
Semikolon ";" seperieren Zeilen voneinander (Matlab/Octave Notation).
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: BAGZZlash
Da eine Rotationsmatrix mathematisch korrekt nach links dreht (d.h. gegen den Uhrzeigersinn), brauchst Du für 135° nach rechts also 360° - 135° = 225° nach links, daher ist alpha = 225: Formel.

In R etwa so:

Code:
A = c(-23, 97)

alpha = 225 #135° right are 360° - 135° = 225° left
alpha = alpha * pi / 180 #Degrees to radians

R = cbind(c(cos(alpha), sin(alpha)), c(-sin(alpha), cos(alpha)))

B = R %*% A
B
 
Zuletzt bearbeitet:
Jetzt muss nur noch der Lehrer eine Lösung mithilfe einer Rotationsmatrix erlauben :D.
 
  • Gefällt mir
Reaktionen: psYcho-edgE und BAGZZlash
Super, danke.

Ich hab zwischenzeitlich auch etwas gebraucht um drauf zu kommen.
Wobei u und v irrelevant für mich sind (Mittelpunkt ist immer (0|0)).

x' = (x-u) cos(alpha) + (y-v) sin(alpha) + v
x' = -23.3956cos(2.3561945)+97.2247sin(2.3561945) Bogenmaß
x' = -23.3956cos(135)+97.2247sin(135) Grad
x' = 85.291432590791709

y' = (x-u) cos(alpha) - (y-v) sin(alpha) + u
y' = -23.3956cos(2.3561945)-97.2247sin(2.3561945)
y' = -23.3956cos(135)-97.2247sin(135)
y' = -52.2050564223341365

Beachten muss ich die Quadranten.

BeBur schrieb:
Jetzt muss nur noch der Lehrer eine Lösung mithilfe einer Rotationsmatrix erlauben :D.

Gott sei Dank nicht. Schule ist schon länger her, daher ist auch das Wissen ziemlich angerostet. :D
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: psYcho-edgE und BeBur
Was Du machst ist eigentlich nichts anderes.
 
  • Gefällt mir
Reaktionen: psYcho-edgE
Zurück
Oben