0 Daumen
1,5k Aufrufe
Ich habe ein Problem bei dem Ergebnis einer Matrix multiplikation mit einem Vektor. Das Koordinatensystem hat seinen Ursprung in der Linken oberen Ecke. x = 3 y = -5 wären also 3 Einheiten nach Rechts und 5 Eineiten nach oben. Nun habe ich folgende Matrix um die Spiegelung eines Punktes zu vollziehen: Zeile 1: 1, 0, 0 Zeile 2: , 0, -1, 0 Zeile 3: , 0, 0, 1 * 3, -5, 1 was ja wenn ich bereits ein Rechteck mit diesen Koordinaten hätte keine Spiegelung wäre da die neuen Koordinaten genau den alten entsprechen würden. Nun wird aber bei diesem Beispiel von der Apple Developer Seite: https://developer.apple.com/library/safari/documentation/AudioVideo/Conceptual/HTML-canvas-guide/MatrixTransforms/MatrixTransforms.html ein Text mit genau diesem Vorgehen gespiegelt ich frage mich nun was mache ich falsch, oder was habe ich nicht beachtet, das der Text gespiegelt wird, aber ein Rechteck beispielsweise nicht ?
Avatar von

1 Antwort

0 Daumen

Zeile 1: 1, 0, 0 Zeile 2: , 0, -1, 0 Zeile 3: , 0, 0, 1 * 3, -5, 1 was ja wenn ich bereits ein Rechteck mit diesen Koordinaten hätte keine Spiegelung wäre da die neuen Koordinaten genau den alten entsprechen würden.

( (1, 0, 0)(  0, -1, 0) ( 0, 0, 1)) *( 3, -5, 1)T = (3,5,1)

Das ist doch kein Rechteck. Einfach der Vektor (3,-5,1)T gespiegelt an der xz-Ebene.

Deine Spiegelungsmatrix wechselt aber bei allen Ortsvektoren das Vorzeichen der y-Komponente. Egal in welche Richtung dein Koordinatensystem schaut.

Um das Rechteck zu spiegeln solltest du doch die Eckpunkte eines Rechtecks einzeln spiegeln.

( (1, 0, 0)(  0, -1, 0) ( 0, 0, 1)) *( 3, 0, 0)T = (3,0,0)

( (1, 0, 0)(  0, -1, 0) ( 0, 0, 1)) *( 0, -5, 0)T = (0,5,0)

( (1, 0, 0)(  0, -1, 0) ( 0, 0, 1)) *( 3, -5, 0)T = (3,5,0)

( (1, 0, 0)(  0, -1, 0) ( 0, 0, 1)) *( 0.0, 0)T = (0,0,0)

Avatar von 162 k 🚀

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community