2010-04-23 11 views
22

In reviewing: http://developer.android.com/reference/android/graphics/Canvas.htmlWas bedeutet es, eine Matrix in Android "vorzuspalten"?

Ich

fragen translate(): "preconcat der aktuellen Matrix mit der angegebenen Übersetzung" - was bedeutet das?

Ich kann nirgendwo im Internet eine gute Definition von "preconcat" finden! Der einzige Ort, wo ich es finden kann, ist in der Android-Quelle - ich beginne mich zu fragen, ob sie es erfunden haben? :)

Ich bin vertraut mit "concat" oder verketten, das an, was ist ein Pre-concat anhängen?

Antwort

28

Beim Arbeiten mit Matrizen bezieht sich das Wort Verkettung auf Multiplikation.

Da die Matrixmultiplikation nicht kommutativ ist, gibt es ein separates Wort für die Rückwärtsmultiplikation.
Pre-verketten a zu b bedeutet Einstellung a = b × a. (Im Gegensatz zu a = a × b, die eine andere Matrix geben wird)

+0

Vielen Dank. Meine Frage war jedoch im Zusammenhang mit dem Android Canvas und ich habe Schwierigkeiten, die Verbindung zwischen der Leinwand und der Matrix herzustellen? –

+0

@Brad: Die Leinwand behält eine Transformationsmatrix bei; 'translate' manipuliert es. – SLaks

+4

Die Zeichenfläche enthält eine Matrix, und die Zeichenfläche wird mit Methoden bearbeitet, die in OpenGL gut definiert sind. Eine große Quelle relevanter Definitionen ist: http://gpwiki.org/index.php/OpenGL:Tutorials:Theory –

Verwandte Themen