水平翻转像素阵列
Flip a pixel array horizontally
我有翻转 32 x 32 像素阵列的代码,但我不知道如何水平翻转它。
这是垂直翻转的代码。
for (int i = 0; i < pixels.length; i++) {
newPixels[(i / 32) * 32
+ (i % 32)] = pixels[(32 - (i / 32) - 1) * Grid.SIZE + (i % 32)];
}
因为 32 是宽度 和 高度,它在所有这些地方都有
int imageWidth = 32;
for (int i = 0; i < pixels.length; i++) {
newPixels[i] = pixels[i - 2 * (i % imageWidth) + imageWidth - 1];
}
使用的索引是(i / imageWidth) * imageWidth
= i - (i % imageWidth)
(线的偏移量)和imageWidth - (i % imageWidth) - 1
(在中心镜像的x位置)
的总和
我有翻转 32 x 32 像素阵列的代码,但我不知道如何水平翻转它。
这是垂直翻转的代码。
for (int i = 0; i < pixels.length; i++) {
newPixels[(i / 32) * 32
+ (i % 32)] = pixels[(32 - (i / 32) - 1) * Grid.SIZE + (i % 32)];
}
因为 32 是宽度 和 高度,它在所有这些地方都有
int imageWidth = 32;
for (int i = 0; i < pixels.length; i++) {
newPixels[i] = pixels[i - 2 * (i % imageWidth) + imageWidth - 1];
}
使用的索引是(i / imageWidth) * imageWidth
= i - (i % imageWidth)
(线的偏移量)和imageWidth - (i % imageWidth) - 1
(在中心镜像的x位置)