2017-04-09 4 views
0

Wenn ich zwei Punkte habe sagen A (x, y) & B (p, q), wie kann ich die Koordinaten des dritten Punktes auf beiden Seiten von AB finden?Wie finde ich die dritte Koordinate eines gleichseitigen Dreiecks?

Ich habe die Formel für eine Seite, aber das kann das andere nicht geben ..

auf jeder Seite, die Formel für Koordinaten des dritten Punkt benötigen.

+2

Für die Zukunft sollte angemerkt werden, dass dies nicht wirklich eine Programmierfrage ist; es ist eine mathematische Frage. Die Math-Site wäre ein geeigneterer Ort zum Posten gewesen. – Carcigenicate

+3

Ich stimme für das Schließen dieser Frage als Off-Topic, weil es um Mathematik/Geometrie geht. –

Antwort

0

Eine mögliche Lösung, basierend auf einem rotation matrixR ist:

A = [0 0]; 
B = [0 1]; 
AB = B-A; 
theta = deg2rad(60); 
R = [cos(theta) -sin(theta); sin(theta) cos(theta)]; 
C = A + AB*R'; 
X = [A;B;C; A]; 
plot(X(:, 1), X(:, 2)); 
axis equal 
0

Da Sie das Ergebnis auf einer Seite haben, dann ist es einfach, den symmetrischen Punkt zu finden.

Nehmen wir an, Ihr Ergebnis für den dritten Punkt ist C (r, s). Sie müssen D (t, w), den symmetrischen Punkt von C, in Bezug auf das Segment AB finden.

Dazu betrachten wir die Mitte von AB: M (u, v) = (A (x, y) + B (p, q))/2;

Wir haben die folgende Gleichung: M (u, v) = (D (t, w) + C (r, s))/2.

Wir erhalten D (t, w) = 2 * M (u, v) - C (r, s). Wir erhalten weiter: D (t, w) = A (x, y) + B (p, q) - C (r, s).

Verwandte Themen