Il documentation è piuttosto vago su ciò che sta realmente accadendo quando questi metodi vengono utilizzati. Qualcuno può spiegare in che modo Matrix influenza effettivamente la bitmap su cui è impostata? Usano il termine concatenare lì, ma non sono chiaro su come quel termine si applica ai dati di coordinate (averlo usato solo per quanto riguarda la manipolazione delle stringhe prima).Cercare una spiegazione di post/pre/set Traduci (in oggetto Matrix) e come usarli
risposta
I metodi set sostituiranno la matrice corrente con nuovi valori, ignorando qualunque sia la matrice contenuta in precedenza. Il metodo pre e post applicherà una nuova trasformazione prima o dopo quello che contiene la matrice corrente.
In questo esempio, la rotazione saranno ignorati, poiché si utilizza il metodo set e la m conterrà solo una traduzione:
Matrix m = new Matrix();
m.setRotate (90);
m.setTranslate (100, 100);
In questo esempio, la matrice finale sarà una conversione seguita da una rotazione:
Matrix m = new Matrix();
m.setTranslate (100, 100);
m.postRotate (90);
Nell'ultimo esempio, la matrice finale sarà una rotazione seguita da una traduzione:
Matrix m = new Matrix();
m.setTranslate (100, 100);
m.preRotate (90);
C'è qualche informazione in più in questa (piuttosto lungo) post:
http://www.satyakomatineni.com/akc/display?url=displaynoteimpurl&ownerUserId=satya&reportId=2898
Speranza che aiuta.
- 1. XNA View Matrix - Cerco spiegazione
- 2. Qualcuno può fornire una buona spiegazione dei CURIE e come usarli?
- 3. Osservabili e come usarli correttamente in Angular2
- 4. Traduci in una lingua specifica in Laravel
- 5. OpenGL: ridimensiona, quindi traduci? e come?
- 6. Traduci una tabella in un dizionario gerarchico?
- 7. Capire i BaseAdapters e come usarli
- 8. Come cercare una matrice in Ruby?
- 9. Come cercare e inserire in una HashMap in modo efficiente?
- 10. CSR Matrix - Matrix moltiplicazione
- 11. Come leggere interattivamente in due input e usarli in una chiamata di funzione
- 12. Rotation Matrix sul punto arbitrario
- 13. Estensioni OpenGL, come usarli correttamente in C e glsl
- 14. Thread in twisted ... come usarli correttamente?
- 15. Come visualizzo una connessione Matrix con Matplotlib?
- 16. Matrix come dizionario chiave
- 17. Laravel 4 Modelli, come usarli
- 18. Come implementare un inizializzatore di oggetto personalizzato pulito per una classe Matrix
- 19. Matrix Moltiplicazione di una Panda dataframe e Serie
- 20. D3 trasforma la scala e traduci
- 21. Cake PhP Blocks - Come usarli?
- 22. Come posso cercare una matrice in VB.NET?
- 23. Come animare i CSS Traduci
- 24. Spiegazione di ++ val ++ e ++ * p ++ in C
- 25. Che cos'è Ext.namespace, come dovremmo usarli?
- 26. ret, RETN, RETF - come usarli
- 27. Che cos'è un delegato in Cocoa e perché dovrei usarli?
- 28. Come cercare una stringa in un'altra stringa?
- 29. C++ enum e usarli per l'input dall'utente
- 30. Spiegazione e l'utilizzo di JSONP
Alcuni commenti sulle coordinate che utilizza sarebbero super anche in questa risposta. ad esempio, "una rotazione seguita da una traduzione" è abbastanza ovvia: ma come si ottiene in termini di asse x & y? Come ruotare qualcosa sul suo punto centrale e non sulla radice di coordinate. – RichieHH
La domanda riguardava la differenza tra i metodi pre/post/set. I documenti API sono piuttosto chiari sulle diverse varianti di ogni trasformazione. C'è ovviamente qualche conseguenza ai valori dei parametri quando si applicano le trasformazioni in diversi ordini, ma qui è un po 'fuori tema. – Albin
Questo aiuta molto, penso così tanto che il team di sviluppo Android dovrebbe includerlo nei loro documenti. – tim687