Boundary Fill vs Flood Fill
Υπάρχουν πολλοί τύποι αλγορίθμων που χρησιμοποιούνται στα γραφικά υπολογιστών για τους σκοπούς της ζωγραφικής φιγούρων. Το Flood Fill και το Boundary Fill είναι δύο από αυτούς τους δημοφιλείς αλγόριθμους. Το Boundary Fill και το Flood Fill είναι σχεδόν παρόμοια στη φύση, αλλά διαφέρουν σε ορισμένες πτυχές που θα επισημανθούν σε αυτό το άρθρο.
Flood Fill
Flood fill χρωματίζει μια ολόκληρη περιοχή σε ένα κλειστό σχήμα μέσω διασυνδεδεμένων pixel χρησιμοποιώντας ένα μόνο χρώμα. Είναι ένας εύκολος τρόπος να γεμίσετε χρώμα στα γραφικά. Το ένα παίρνει απλώς το σχήμα και αρχίζει το flood fill. Ο αλγόριθμος λειτουργεί με τέτοιο τρόπο ώστε να δίνει σε όλα τα εικονοστοιχεία μέσα στο όριο το ίδιο χρώμα αφήνοντας το όριο και τα εικονοστοιχεία έξω. Το Flood Fill αναφέρεται επίσης μερικές φορές ως Seed Fill καθώς φυτεύετε έναν σπόρο και όλο και περισσότεροι σπόροι φυτεύονται από τον αλγόριθμο. Κάθε σπόρος αναλαμβάνει την ευθύνη να δώσει το ίδιο χρώμα στο pixel στο οποίο είναι τοποθετημένο. Υπάρχουν πολλές παραλλαγές του αλγορίθμου Flood Fill που χρησιμοποιούνται ανάλογα με τις απαιτήσεις.
Γέμισμα ορίων
Το Boundary Fill είναι ένας άλλος αλγόριθμος που χρησιμοποιείται για το χρωματισμό των σχημάτων σε γραφικά υπολογιστή. Είναι τόσο παρόμοιο με το Flood Fill που πολλοί μπερδεύονται για το αν πρόκειται για άλλη παραλλαγή του. Εδώ η περιοχή χρωματίζεται με pixel ενός επιλεγμένου χρώματος ως όριο, δίνοντας το όνομά της στην τεχνική. Μπορεί κανείς να δει τη διαφορά στις συνθήκες που υπάρχουν για τη φύτευση των σπόρων. Το γέμισμα ορίων γεμίζει την επιλεγμένη περιοχή με ένα χρώμα μέχρι να βρεθεί το δεδομένο έγχρωμο όριο. Αυτός ο αλγόριθμος είναι επίσης αναδρομικός στη φύση, καθώς η συνάρτηση επιστρέφει όταν το εικονοστοιχείο που πρόκειται να χρωματιστεί είναι το χρώμα του ορίου ή είναι ήδη το χρώμα πλήρωσης.
Συνοπτικά:
• Το Flood Fill και το Boundary Fill είναι αλγόριθμοι που χρησιμοποιούνται για τον χρωματισμό ενός δεδομένου σχήματος με ένα επιλεγμένο χρώμα
• Το Flood Fill είναι ένα στο οποίο όλα τα συνδεδεμένα pixel ενός επιλεγμένου χρώματος αντικαθίστανται από ένα χρώμα γεμίσματος.
• Το Boundary Fill είναι πολύ παρόμοιο με τη διαφορά ότι το πρόγραμμα σταματά όταν βρεθεί ένα συγκεκριμένο όριο χρώματος.