2010-04-23 6 views
22

Nel rivedere: http://developer.android.com/reference/android/graphics/Canvas.htmlChe cosa significa "preconcattare" una matrice in Android?

mi chiedo

translate(): "preconcat la matrice corrente con la traduzione specificato" - cosa significa?

Non riesco a trovare una buona definizione di "preconcat" ovunque su Internet! L'unico posto in cui posso trovarlo è nell'origine di Android: sto cominciando a chiedermi se sono riusciti a inventarlo? :)

Ho familiarità con "concat" o concatenato, che è da aggiungere a, quindi cos'è un pre-concat?

risposta

28

Quando si lavora con le matrici, la concatenazione di parole fa riferimento alla moltiplicazione.

Poiché la moltiplicazione della matrice non è commutativa, esiste una parola separata per la moltiplicazione all'indietro.
Pre-concatenare a a b significa impostare a = b × a. (A differenza di a = a × b, che darà una matrice diversa)

+0

Grazie. La mia domanda era comunque nel contesto di Android Canvas e sto attraversando un periodo difficile per stabilire la connessione tra il canvas e la matrice? –

+0

@Brad: il canvas mantiene una matrice di trasformazione; 'translate' lo manipola. – SLaks

+4

Il canvas mantiene una matrice e la tela è manipolata da metodi ben definiti in OpenGL. Una grande fonte di definizioni rilevanti è: http://gpwiki.org/index.php/OpenGL:Tutorials:Theory –