Я работаю над простым приложением для рисования, и мне нужен алгоритм для заливки заливкой.
Рабочий процесс пользователя будет выглядеть так (аналогично Flash CS, только проще):
Если линии перемещаются после применения заливки, область заливки изменяется соответствующим образом.
У любого есть хорошая идея, как реализовать такой алгоритм? Основная задача состоит в том, чтобы определить отрезки линии, окружающие точку. (и сохраняя эту информацию каким-либо образом, если строки перемещаются)
EDIT: поясняющее изображение: (на холсте, конечно, могут быть другие строки, которые не имеют значения для алгоритма заполнения)
EDIT2: более сложная ситуация:
РЕДАКТИРОВАТЬ3: Я нашел способ заполнить полигоны дырами http://alienryderflex.com/polygon_fill/ , теперь главный вопрос: как мне найти свои многоугольники?