C# 旋转像素阵列的好方法是什么?

C# 旋转像素阵列的好方法是什么?,c#,.net,C#,.net,NET framework是否提供了旋转像素阵列的好方法?更清楚地说,我不仅仅是在寻找旋转图像的方法。相反,我希望旋转图像所基于的底层像素阵列,以便能够访问修改后的阵列。如果.NET框架已经提供了一种很好的方法,我宁愿不实现旋转算法或包装另一个库。我需要能够支持任何旋转,而不仅仅是90/180/270/等旋转,这将很容易实现 我考虑过使用一个支持这种旋转的图像类,然后从中访问修改后的数组。首先,我不确定这是否是一个好主意,也不确定哪个图像类是最佳选择。到目前为止,我还没有找到一个类或类的组合来支

NET framework是否提供了旋转像素阵列的好方法?更清楚地说,我不仅仅是在寻找旋转图像的方法。相反,我希望旋转图像所基于的底层像素阵列,以便能够访问修改后的阵列。如果.NET框架已经提供了一种很好的方法,我宁愿不实现旋转算法或包装另一个库。我需要能够支持任何旋转,而不仅仅是90/180/270/等旋转,这将很容易实现

我考虑过使用一个支持这种旋转的图像类,然后从中访问修改后的数组。首先,我不确定这是否是一个好主意,也不确定哪个图像类是最佳选择。到目前为止,我还没有找到一个类或类的组合来支持我需要的旋转,并允许访问像素阵列

更新:

我开始觉得我不是问错了问题就是问错了问题。如果我理解Cosmin关于正确使用Matrix类的意思,我认为这对我实际尝试的工作不起作用。我会尽力更好地解释我的问题

基本上,我有一个2D数据数组,我想旋转它。我的意思是,我希望元素的值根据旋转旋转到适当的元素

例如:

-----------
|A|A|A|A|A|
-----------
|B|B|B|B|B|
-----------
|C|C|C|C|C|
-----------
如果我将这个数组围绕中心元素逆时针旋转90度,我将得到如下结果:

-----------
| |A|B|C| |
-----------
| |A|B|C| |
-----------
| |A|B|C| |
-----------

不幸的是,我必须支持任何旋转,而不仅仅是90度旋转,这意味着需要更复杂的旋转算法,因为旋转后的元素索引并不总是整数,也可能重叠。这似乎是一个在计算机图形学领域可能已经解决的问题,这让我以我的方式提出了这个问题。

是的,你可以使用Matrix类:

为什么你需要访问像素阵列?我想在我的原始帖子中包括这一点,但我觉得这很有可能导致对我的问题的离题/误导性回答。我可能错了。基本上,我展示了这些数据的多个视图,其中一个是ASCII视图。数据本质上是地理性的,我需要向用户提供以某种方式定向的视图,因此在尝试将数据表示为ASCII图像之前,我需要旋转数据。可能指定像素阵列是个坏主意,因为如果我可以将任何2D阵列旋转任意角度,这可能会解决我的问题。似乎这样的算法很可能会与计算机图形学有关,这让我以我的方式提出了这个问题。