Jestem całkiem nowy w przetwarzaniu obrazu i obecnie pracuję nad aplikacją podobną do farby, która będzie zawierała wypełnienie wiadra. Nie mam jednak pojęcia, jaki jest najlepszy algorytm wypełniania wiadra.
Wdrożyłem przykład, który znalazłem na tej stronie , jednak wystąpiły problemy z nieskończoną pętlą, gdy użytkownik próbował wypełnić wiadro obszarem, który został już wypełniony wiadrem tego samego koloru.
Obecnie pracuję nad tym problemem, wypełniając w lewo, w prawo, w górę, a następnie w dół; jednak zrobiłem to, aby po wypełnieniu piksela po lewej stronie nie mógł wypełnić się po prawej stronie, co oznacza, że kształty takie jak:
nie zostanie prawidłowo wypełniony, jeśli narzędzie łyżki zostanie użyte w czerwonej kropce.
Dlatego mam nadzieję, że ktoś zna algorytm lub link do takiego, który rozwiąże wszystkie te problemy.
Informacje dodatkowe: Zostanie to zaimplementowane przy użyciu Javascript jako narzędzia do malowania. Będzie on używany online z wykorzystaniem elementu Canvas.