使用矩阵变换旋转2D阵列

时间:2014-12-14 05:24:55

标签: arrays matrix rotation

我正在编写一个程序,需要一个nxn数组围绕它的中心旋转。旋转仅为90度角。

我所做的是将原点转换为中心并执行旋转,然后再将其转换回来。

例如,一个3x3阵列:

0 0 1
0 1 1
0 1 1
当它围绕它的中心旋转90度时,变为:

1 1 1
0 1 1
0 0 0

使用(1,1)作为其中心,然后在获得相对于中心的位置之后,应用旋转变换。问题是当我有一个偶数维,一个4x4数组,例如:

0 1 1 1
1 1 1 0
0 0 0 0
0 1 0 0

它的中心是什么?或者更确切地说,如何使用变换矩阵正确旋转数组?

编辑:假设数组可以包含任何内容,整数或甚至是对象

0 个答案:

没有答案