这更多是一个好奇的问题,为什么 MatrixTransform 是这样的,而不是一个真正的问题。
MSDN 给出了 MatrixTransform 的仿射变换矩阵,如下所示:
m11 m12 0
A := m21 m22 0
offX offY 1
http://msdn.microsoft.com/en-us/library/system.windows.media.matrixtransform(v=VS.100).aspx
要转换一个点,您可以这样使用它:
x' = xTA
。这与我所期望的不同 - x' = Ax
,它使用这个矩阵: m11 m12 offX
A := m21 m22 offY
0 0 1
我意识到这对 MatrixTransform 的实现没有影响,但我想知道这里是否缺少一些见解。有谁知道为什么转换矩阵是这样指定的?
最佳答案
使用矩阵行主要而不是列主要只是一种约定。大多数计算机图形系统都遵循此约定。
关于c# - MatrixTransform 的矩阵看起来转置给我,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4176872/