Гранично запълване срещу заливане
Има много видове алгоритми, които се използват в компютърната графика с цел рисуване на фигури. Заливане на наводнения и запълване на граници са два от тези популярни алгоритми. Граничното запълване и запълването с наводнение са почти сходни по своята същност, но се различават по определени аспекти, които ще бъдат подчертани в тази статия.
Заливане на наводнения
Flood fill оцветява цяла област в затворена фигура чрез взаимосвързани пиксели, използвайки един цвят. Това е лесен начин за запълване на цвят в графиката. Човек просто приема формата и започва запълване. Алгоритъмът работи по начин, който дава на всички пиксели вътре в границата един и същ цвят, оставяйки границата и пикселите навън. Flood Fill също понякога се нарича Seed Fill, когато засаждате семе и все повече семена се засаждат от алгоритъма. Всяко семе поема отговорността да даде същия цвят на пиксела, на който е позиционирано. Има много варианти на алгоритъма за заливане на наводнения, които се използват в зависимост от изискванията.
Гранично запълване
Boundary Fill е друг алгоритъм, използван за оцветяване на фигури в компютърна графика. То е толкова подобно на Flood Fill, че мнозина са объркани дали това е друга негова разновидност. Тук областта се оцветява с пиксели от избран цвят като граница, което дава името на техниката. Вижда се разликата в условията за засаждане на семената. Граничното запълване запълва избраната област с цвят, докато се намери дадената цветна граница. Този алгоритъм също има рекурсивен характер, тъй като функцията се връща, когато пикселът, който трябва да бъде оцветен, е граничен цвят или вече е цветът на запълване.
Накратко: • Flood Fill и Boundary Fill са алгоритми, използвани за оцветяване на дадена фигура с избран цвят • Flood Fill е този, при който всички свързани пиксели от избран цвят се заменят с цвят на заливката. • Попълването на граници е много подобно, като разликата е, че програмата спира, когато се намери дадена граница на цвета. |