Matrix 对给定描述变换矩阵的多边形应用不同变换

Matrix 对给定描述变换矩阵的多边形应用不同变换,matrix,rotation,2d,translation,transformation,Matrix,Rotation,2d,Translation,Transformation,我有一个2D多边形和一个2D变换矩阵M,我用它来变换多边形的顶点。矩阵可以描述 绕z轴旋转, 沿x和y缩放, 沿x轴和y轴倾斜, 沿x轴和y轴平移。 因为我们是二维的,所以变换矩阵是3x3型的。这里以向量t的平移矩阵和角度a的旋转为例: 在我的自定义框架中,我无法访问矩阵值,但可以应用一行中的其他矩阵: vertice = ( M_r * M_t ) * vertice 上面的公式将垂直面绕0旋转,0旋转角度a,然后将垂直面平移向量t。我知道矩阵乘法不是可交换的。所以乘法的顺序很重要 现在我的

我有一个2D多边形和一个2D变换矩阵M,我用它来变换多边形的顶点。矩阵可以描述

绕z轴旋转, 沿x和y缩放, 沿x轴和y轴倾斜, 沿x轴和y轴平移。 因为我们是二维的,所以变换矩阵是3x3型的。这里以向量t的平移矩阵和角度a的旋转为例:

在我的自定义框架中,我无法访问矩阵值,但可以应用一行中的其他矩阵:

vertice = ( M_r * M_t ) * vertice
上面的公式将垂直面绕0旋转,0旋转角度a,然后将垂直面平移向量t。我知道矩阵乘法不是可交换的。所以乘法的顺序很重要

现在我的问题是,我想要得到一个变换矩阵N,它反映了在应用未知变换矩阵M之后,围绕多边形新中心的旋转R,然后是平移T。或者换句话说,我想要相对于M给出的位置和旋转旋转旋转和平移多边形

我可以想象这样做,将未知的旋转和平移合并为M的一部分:

我的问题是:

这在数学上正确吗? 作为M的一部分,未知的光泽和缩放效果如何? 有更好的方法吗?
vertice = ( M_r * M_t ) * vertice
N = R * M * T