На этом шаге мы рассмотрим общий алгоритм закрашивания.
Рассмотрим алгоритмы закрашивания произвольного контура, который уже нарисован в растре. Сначала находится пиксель внутри контура фигуры. Цвет этого пикселя изменяем на нужный цвет заполнения. Потом проводится анализ цветов всех соседних пикселей. Если цвет некоторого соседнего пикселя не равен цвету границы контура или цвету заполнения, то цвет этого пикселя изменяется на цвет заполнения. Потом анализируется цвет пикселей, соседних с предыдущими. И так далее, до тех пор, пока внутри контура все пиксели не перекрасятся в цвет заполнения.
Пиксели контура - это граница, за которую нельзя выходить в ходе последовательного перебора всех соседних пикселей. Соседними могут считаться только четыре пикселя (справа, слева, сверху и снизу - четырехсвязность), или все восемь пикселей (восьмисвязность). Не всякий контур может служить границей закрашивания (рисунок 1).
Рис.1. Особенности восьмисвязного закрашивания
На следующем шаге мы рассмотрим простейший алгоритм закрашивания.