Sono abbastanza nuovo nell'elaborazione delle immagini e attualmente sto lavorando a un'applicazione simile a una vernice che includerà un riempimento a secchiello. Tuttavia, non ho idea di quale sia l'algoritmo migliore per un bucket-fill.
Ho implementato un esempio che ho trovato da questo sito , tuttavia, si sono imbattuti in infiniti problemi di loop quando un utente ha cercato di riempire a secchio un'area che era già stata riempita a secchio con lo stesso colore.
Attualmente sto risolvendo il problema compilando sinistra, destra, su e poi giù; tuttavia, l'ho fatto in modo che una volta che un pixel è stato riempito a sinistra, non può riempire a destra, il che significa forme come:
non verrà riempito correttamente se lo strumento secchio viene utilizzato nel punto rosso.
Pertanto, spero che qualcuno conosca un algoritmo o un collegamento a uno che risolverà tutti questi problemi.
Informazioni aggiuntive: questo sarà implementato usando Javascript come strumento di disegno. Verrà utilizzato online utilizzando l'elemento Canvas.