Ищете объяснение post / pre / set Translate (в объекте Matrix) и как их использовать

Документация довольно неопределенная относительно того, что на самом деле происходит, когда эти методы используются. Может ли кто-нибудь объяснить, как Матрица на самом деле влияет на битмап, на который он настроен? Они используют термин concatenate там, но я не понимаю, как этот термин применяется к координатным данным (которые раньше использовали его только для манипуляции строкой).

Solutions Collecting From Web of "Ищете объяснение post / pre / set Translate (в объекте Matrix) и как их использовать"

Методы set заменят текущую матрицу новыми значениями, не считаясь с тем, что содержалось в Матрице. Метод pre и post будет применять новое преобразование до или после того, что содержит текущая матрица.

В этом примере вращение будет проигнорировано, так как мы используем метод set, и m будет содержать только перевод:

Матрица m = новая матрица ();

m.setRotate (90);

M.setTranslate (100, 100);

В этом примере конечной матрицей будет перевод, за которым следует поворот:

Матрица m = новая матрица ();

M.setTranslate (100, 100);

m.postRotate (90);

В последнем примере конечной матрицей будет поворот, за которым следует перевод:

Матрица m = новая матрица ();

M.setTranslate (100, 100);

m.preRotate (90);

В этом (довольно длинном) сообщении есть дополнительная информация:

http://www.satyakomatineni.com/akc/display?url=displaynoteimpurl&ownerUserId=satya&reportId=2898

Надеюсь, поможет.