PixLab - turn90()
Я кодирую метод, который принимает изображение в классе Picture и использует его классы Pixel для управления им. Я пытаюсь повернуть изображение на 90 градусов вправо, но я получаю индекс массива за исключением границ, и я не знаю почему. Насколько я знаю, я делаю это правильно
Я написал несколько черновиков и поиграл с моим кодом, но ошибка сохраняется
public Picture turn90()
{
Pixel[][] pixels = this.getPixels2D();
int width = pixels[0].length;
int height = pixels.length;
Picture result = new Picture(width, height);
Pixel[][] resultPixels = result.getPixels2D();
Pixel original = null;
for(int xIndex = 0; xIndex < width; xIndex++)
{
for(int yIndex = 0; yIndex < height; yIndex++)
{
int modifiedX = (height - 1) - yIndex;
int modifiedY = xIndex;
original = pixels[xIndex][yIndex];
resultPixels[modifiedX][modifiedY].updatePicture(original.getAlpha(),
pixels[xIndex][yIndex].getRed(), pixels[xIndex][yIndex].getGreen(),
pixels[xIndex][yIndex].getBlue());
}
}
return result;
}