Sınır Doldurma Algoritması (Boundary Filling Algorithm)

Yazan : Şadi Evren ŞEKER

Bilgisayar grafiklerinde kullanılan ve çokgenlerin içlerinin doldurulması için kullanılan algoritmadır. Basitçe bir çokgenin (polygon) içinin belirli bir renge boyanacağını düşünelim. Bu durumda çokgenin içerisinin belirlenmesi ve belirlenen bu alanın daha önceden seçilmiş renk ile doldurulması gerekir.

Örneğin yukarıda verilen çokgenin bir alanına bu algoritma uygulanmıştır. Bu algoritmanın kodu aşağıdaki şekildedir:

void boundaryFill4 (int x, int y, int fillColor, int borderColor)

{

int interiorColor;

/* Doldurulacak olan renk olarak ayarlama yapılıyor */

getPixel (x, y, interiorColor);

if ((interiorColor != borderColor) &&

(interiorColor != fillColor)) {

setPixel (x, y); // Set pixel color to fillColor

boundaryFill4 (x + 1, y , fillColor, borderColor);

boundaryFill4 (x – 1, y , fillColor, borderColor);

boundaryFill4 (x , y + 1, fillColor, borderColor);

boundaryFill4 (x , y – 1, fillColor, borderColor)

}

Yukarıdaki koddan da anlaşılacağı üzere algoritma, çokgenin içerisindeki rastgele bir noktadan başlayarak, bu başlangıç noktasının komşusu olan noktaları (4 yöne doğru) teker teker boyamaya çalışmaktadır. Bu işlem sırasında boyanacak olan piksellerin renk kodları kontrol edilerek, zaten boyanmış veya kenar olup olmadığına bakılmaktadır.

Bu yazıyı beğendiyseniz, başkalarının da ilgisini çekebilirsiniz:


100 views

Leave a Reply


* sekiz = 64

Benzer Yazılar:

Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Sınır Doldurma Algoritması (Boundary Filling Algorithm)' isimli yazı 21 Oct 2008 tarihinde, saat: 04:43 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam100 defa okunmuştur.

Benzer yazıları Bilgisayar Grafiği (Computer Graphics) kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.


Category: Bilgisayar Grafiği (Computer Graphics)