Mittelpunkt einer gedrehten Ellipse berechnen

Hallo Leute!

Ich benötige, für die Berechnung eines Ellipsen-Mittelpunktes, Eure Hilfe.

Geg.:

  • 2 Punkte (x1,y1) und (x2,y2)
  • Radius der Haupt und Nebenachse A, B
  • Der Winkel a (alpha) (um den die Ellipse gedreht ist)

Ges.:

  • Mittelpunkt der Ellipse (Mx,My),
    wenn sich die gegebenen Punkte auf dem Umfang der Ellipse befinden.

Ich habe schon einiges probiert, bin aber nie weiter gekommen. Rein theoretisch müsste es zwei Lösungen geben. Denn wenn man eine Gerade durch die Punkte zieht und die Ellipse darüber legt, kann sich der Mittelpunkt links oder rechts bzw. über oder unter der Gerade befinden.

Vielleicht habt Ihr ja schon mal eine solche Aufgabe gelöst oder habt eine Gute Idee wie man sie löst.

Vielen Dank im Voraus

Hallo!

Geg.:

  • 2 Punkte (x1,y1) und (x2,y2)
  • Radius der Haupt und Nebenachse A, B
  • Der Winkel a (alpha) (um den die Ellipse gedreht ist)

Ges.:

  • Mittelpunkt der Ellipse (Mx,My),

Das hängt jetzt von Deinem Bildungsstand ab, wieviel ich Dir hier erklären muss. Damit ich mir keinen Wolf schreibe, erst einmal die Lösung für maximal vorgebildete:

Jede Ellipse lässt sich durch eine affine Transformation in den Ursprungs-Einheitskreis überführen. Dazu kann z.B. zunächst die Drehung, dann die Streckung und zuletzt die Verschiebung durchgeführt werden.

Der Mittelpunkt des Einheitskreises ist nun (0,0). Durch die Umkehrtransformation bekommst Du den Mittelpunkt der gegebenen Ellipse.

Ob es zwei Lösungen gibt, kann ich nicht sagen, ich habe es weder ausprobiert noch darüber nachgedacht.

Weitere Details auf Nachfrage.

Liebe Grüße
Immo

Hallo Immo,

vielen Dank für Deine Antwort.

Bei diesem Ellipsen-Problem habe ich bereits unterschiedliche Herangehensweisen probiert, leider bin ich immer irgendwie gescheitert. :frowning:
Drehung,Streckung und Verschiebung konnte ich nicht machen, da ich nicht weiß wo der Mittelpunkt ist. Der ist ja gesucht…
Gedreht wird doch um den Mittelpunkt?. Und um die Ellipse zu Verschieben, muss ich wissen wie weit in X- und wie weit in Y-Richtung.

  • Oder habe ich da einen Denkfehler?

Ich habe folgende Ansätze probiert: …

gegeben: P1(x1,y1); P2(x2,y2); Rotation a;
gesucht: Mittelpunkt (mx,my)

  1. Variante (über Winkel)

Ausgangspunkt:
x1=cos(winkel1)*a + mx
y1=sin(winkel1)*b + my
Das ganze habe ich der Rotations-Matrix Multipiziert…
[x1]     [cos(a) -sin(a)]   [cos(winkel1)*a]
[y1] = [sin(a) cos(a)] * [sin(winkel1)*b]

Ausmultipliziert:
x1 = cos(a)*cos(winkel1)*a + (-sin(a)*sin(winkel1)*b)
y1 = sin(a)*cos(winkel1)*a + cos(a)*sin(winkel1)*b

Und wieder den Mittelpunkt dazu addieren…
x1 = cos(a)*cos(winkel1)*a + (-sin(a)*sin(winkel1)*b) + mx
y1 = sin(a)*cos(winkel1)*a + cos(a)*sin(winkel1)*b + my

Das Gleiche gilt für P2 nur dann mit winkel2, da sich der Punkt an einer anderen Stelle befindet.
x2 = cos(a)*cos(winkel2)*a + (-sin(a)*sin(winkel2)*b) + mx
y2 = sin(a)*cos(winkel2)*a + cos(a)*sin(winkel2)*b + my

Danach gab es nur noch Haareraufen und Wutanfälle :wink:

  1. Variante (über Dreiecke)

Ausgangspunkt:
Zwei Dreiecke, eines pro gegebenen Punkt mit den Brennpunkten der Ellipse
P1-> Dreieck( F1, F2, P1 )
P2-> Dreieck( F1, F2, P2 )
Formeln:
Der Umfang jedes der Dreiecke beträgt 2*a
Die Länge der Seite F1-F2 beträgt 2*e und der Mittelpunkt befindet sich in der hälfte der Strecke.
e = Wurzel( a*a - b*b )
Nun habe ich versucht irgendwie die Höhen h1 und h2 (Senkrecht auf Strecke F1-F2 ) zu bestimmen. Ohne Erfolg, da die Längen von F1 zur Höhe und F2 zur Höhe (im Tafelwerk p und q) nicht bekannt sind.

Hallo!

Drehung,Streckung und Verschiebung konnte ich nicht machen, da
ich nicht weiß wo der Mittelpunkt ist.

Musst Du doch auch nicht.

Gedreht wird doch um den Mittelpunkt?

Du kannst doch einfach um den Ursprung drehen. Wenn Deine Ellipse sich vorher um α neigte, dann drehst Du das ganze Koordinatensystem mit der Drehmatrix um -α, und dann ist Deine Ellipse gerade. Sagen wir, R ist die Drehmatrix, dann hast Du nun die beiden Punkte R*P_1 und R*P_2 auf der gedrehten Ellipse.

Nun streckst Du die Ellipse in x-Richtung mit 1/a, in y-Richtung mit 1/b. Du weißt sicher, wie die entsprechende Streckungsmatrix aussieht, ich nenn sie mal A. Dann bekommst Du einen Einheitskreis (nicht um den Ursprung!), auf dem die Punkte A*R*P_1 und A*R*P_2 liegen.

Und um die Ellipse zu
Verschieben, muss ich wissen wie weit in X- und wie weit in
Y-Richtung.

Da hast Du Recht, dann lassen wir das weg. Bestimmen wir einfach die Kreisgleichung (es sollte tatsächlich zwei Lösungen geben): Zu bestimmen sind die Koordinaten des Mittelpunktes, gegeben sind zwei Punkte auf dem Kreis und dessen Radius (1) - das ist machbar.

Du bekommst nun als Ergebnis A*R*M_(1,2), und musst daraus jetzt M berechnen - das sollte doch gehen.

  1. Variante (über Winkel)

Ausgangspunkt:
x1=cos(winkel1)*a + mx
y1=sin(winkel1)*b + my

Genügt es Dir nicht, dass Du mx und my nicht kennst - da führst Du noch die neue Unbekannte winkel1 ein. Mach Dir doch Dein Problem nicht komplizierter, als es ist!

Liebe Grüße
Immo

Hallo Immo!

vielen Dank für Deine Hilfe. Auf die Idee wäre ich nie gekommen…
Hat super geklappt. Tausend Dank!

Viele Grüße
watte