Saya cukup baru dalam pemrosesan gambar, dan saat ini saya sedang mengerjakan aplikasi mirip cat yang akan menampilkan isi ember. Namun, saya tidak tahu apa algoritma terbaik untuk bucket-fill.
Saya menerapkan contoh yang saya temukan dari situs ini , namun, ia mengalami masalah loop tak terbatas ketika pengguna mencoba mengisi area yang sudah diisi dengan warna yang sama.
Saat ini saya sedang mengatasi masalah itu dengan mengisi kiri, kanan, atas dan bawah; namun, saya membuatnya sehingga setelah piksel diisi ke kiri, tidak dapat mengisi ke kanan, yang berarti bentuk seperti:
tidak akan diisi dengan benar jika alat ember digunakan pada titik merah.
Oleh karena itu, saya berharap seseorang mengetahui suatu algoritma atau tautan ke salah satu yang akan menyelesaikan semua masalah ini.
Informasi Tambahan: Ini akan diimplementasikan menggunakan Javascript sebagai alat cat. Ini akan digunakan secara online menggunakan elemen Canvas.