Как преобразование Matrix.preRotate () | Matrix.setRotate () | Matrix.postRotate() работает в Android

#java #android #graphics #opengl-es

#java #Android #графика #opengl-es

Вопрос:

Насколько Matrix.preTranslate (float dx, float dy) работает следующим образом (в математической форме) :

 [MSCALE_X MSKEW_X MTRANS_X]   [1 0 MTRANS_X]
[MSKEW_Y MSCALE_Y MTRANS_Y] * [0 1 MTRANS_Y] 
[MPERSP_0 MPERSP_1 MPERSP_2]  [0 0 1]
  

и Matrix.preScale (float sx, float sy) работает следующим образом (в математической форме) :

 [MSCALE_X MSKEW_X MTRANS_X]   [MSCALE_X 0 0]
[MSKEW_Y MSCALE_Y MTRANS_Y] * [0 MSCALE_Y 0] 
[MPERSP_0 MPERSP_1 MPERSP_2]  [0 0 1]
  

и Matrix.preSkew(float kx, float ky) работает следующим образом :

 [MSCALE_X MSKEW_X MTRANS_X]   [1 MSKEW_X 0]
[MSKEW_Y MSCALE_Y MTRANS_Y] * [MSKEW_Y 1 0] 
[MPERSP_0 MPERSP_1 MPERSP_2]  [0 0 1]
  

тогда как Matrix.preRotate (плавающие градусы) (или postRotate (плавающие градусы) или setRotate (плавающие градусы)) работает в этой математической форме?????

Комментарии:

1. Точно так же, только с матрицей вращения.

2. И что такое matix вращения (в математической форме)?????

3. Матрица вращения . Не помешало бы сначала что-нибудь погуглить, если вы этого не знаете.