Помогите пожалуйста понять, в чем ошибка, в тесте проверил, все работает
В процессе разработки новой версии популярного графического редактора возникла необходимость реализовать заливку области картинки определенным цветом.
Реализуй метод paintFill в классе PhotoPaint таким образом, чтобы он возвращал:
- false, если цвет начальной точки (координаты приходят в качестве параметров) совпадает с цветом заливки или если начальные координаты выходят за рамки массива.
- модифицировал входящий массив и возвращал true, если заливка все же может быть выполнена.
Точке с координатами (x, y) соответствует элемент массив с индексом [y][x].
P.S.Если алгоритм работы заливки не очевиден, можешь попрактиковаться в графическом редактореPaint.
Требования:
Метод paintFill должен возвращать false, если переданные координаты выходят за границы изображения.
Метод paintFill должен возвращать false, если цвет начальной точки совпадает с цветом заливки.
Метод paintFill должен возвращать true и корректно модифицировать изображение, если это возможно.
Метод paintFill должен быть публичным.
....
package com.javarush.task.task39.task3905;
public enum Color {
RED,
ORANGE,
YELLOW,
GREEN,
BLUE,
INDIGO,
VIOLET
}
0
Комментарии (14)
популярные
новые
старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
publicbooleanpaintFill(Color[][] image,int x,int y,Color desiredColor){if(y >= image.length || x >= image[0].length || x <0|| y <0|| desiredColor ==null)returnfalse;if(image[y][x].equals(desiredColor))returnfalse;
image[y][x]= desiredColor;paintFill(image, x -1, y, desiredColor);paintFill(image, x +1, y, desiredColor);paintFill(image, x, y -1, desiredColor);paintFill(image, x, y +1, desiredColor);returntrue;}
Если ты в Пейнте нарисуешь, к примеру, окружность, а потом выберешь инструмент "Заливка" и кликнешь где-нибудь - неважно, внутри или снаружи окружности... что произойдет?
Весь рисунок закрасится?
Посмотри, как это работает в том же Paint.
Например, если закрасить половину картинки красным цветом, а другую половину - синим. А потом на одной из частей применить заливку зеленым.
Что будет?