Pisagor Yöntemi İle Çember (Pythagorean Theorem in Circle Drawing)
Yazan : Şadi Evren ŞEKER
Bilgisayar grafiklerinde çember çizmek için kullanılan yöntemlerden birisidir. Diğer çok kullanılan yöntemlerden birisi de kutup koordinatları (polar coordinates) kullanmaktır.
Bu yöntemde, bir çemberin formülü alındıktan sonra bu çember üzerindeki imgeciklerin (pixel) nasıl bulunacağı çözüme ulaştırılmıştır. Örneğin aşağıdaki gibi bir çemberi ele alalım:

Yukarıdaki bu resimde merkezi belirli olan (xc,yc) ve r yarıçapındaki bir çemberin üzerinde bulunan herhangi bir noktanın (x,y) koordinatları tasvir edilmiştir. Bu (x,y) imgeciğini hesaplamak için aşağıdaki pisagor bağlantısı üzerine inşa edilmiş matematiksel yöntem kullanılabilir:
Öncelikle çemberin formülünü hatırlayalım:
x2 + y2 = r2
Bu formülden yola çıkarak şayet çember xc ve yc kadar kaydırılmışsa aşağıdaki formül elde edilir:
(x-xc)2 + (y-yc)2 = r2
yukarıdaki formülümüzden y değeri çekilirse aşağıdaki sonuç elde edilir:
y = yc ± √r2 – (x-xc)2
Ayrıca şekilden de anlaşılacağı üzere çember üzerindeki bir x noktası hem merkeze r eklenmiş hem de r çıkarılmış halidir, bunu da aşağıdaki şekilde gösterebiliriz:
(xc-r) ≤ x ≤ (xc+r)
Bu matematiksel bağlantıları kullanarak verilen bir imgecik koordinatlarının çember üzerinde olup olmadığı bulunabileceği gibi çember üzerindeki imgecikler de hesaplanabilir. Bu hesaplamalar sonucunda da aşağıdakine benzer bir çember elde edilir.

Bu çemberde dikkat edilirse doğrudan çizim algoritması (direct drawing algorithm) benzer bir problem ortaya çıkmaktadır. Bu problem de çember dikleştikçe kodlanan imgecik sayısının azalmasıdır. Problem bahsi geçen algoritmadakine benzer şekilde eğim değişince algoritmanın farklı davranması sağlanarak çözülebilir.
Bu çözüm sayesinde yukarıdakin gibi daha yoğun imgecikler elde edilebilmektedir.
« Bresenham Doğru Çizim Algoritması (Bresenham’s Algorithm) | Kutup Koordintaları ile Çember Çizimi (Circle Drawing with Polar Coordinates) »
Yorumlar
Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Pisagor Yöntemi İle Çember (Pythagorean Theorem in Circle Drawing)' isimli yazı 28 Aug 2008 tarihinde, saat: 17:44 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam 1670 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.
Yazarın Kitabı
Bu yazının yazarı Şadi Evren ŞEKER'in son çıkan kitabı "Programlama ve Veri Yapılarına giriş (C, C++ ve JAVA ile)" hakkında bilgi almak için Buraya tıklayabilirsiniz.
Eklenen Son Yazılar
- Visual Basic ile Gösterici (Pointer) Kullanımı
- Hasse Çizgeleri (Hasse Diagrams)
- Zeki Vekiller (Akıllı Ajanlar, Intelligent Agents, Zeki Etmenler )
- Integral Kriptoanalizi ( Toplam Tecessüsü , Integral Cryptoanalysis)
- Diferansiyel Kriptoanalizi ( Fark Tecessüsü , Differential Cryptoanalysis)
- Sierpinski Üçgeni (Sierpinski Triangle)
- C ile programlamaya giriş final sınavı çözümleri
- Çok Seviyeli Sıralar (Multi Level Queues)
- Çift Özetleme (Double Hashing)
- İkinci Dereceden Sondalama (Quadratic Probing)
Yapılan Son Yorumlar
- Şadi Evren ŞEKER: Sıralama işleminiz poligonu...
- Şadi Evren ŞEKER: bahsettiğiniz sıralama algoritması...
- Abdurrahman ulusoy: merhaba hocam. gelişigüzel...
- Oguz Okutan: Merhaba hocam.. Fonksiyonlarda degere göre...
- Şadi Evren ŞEKER: Null, NULL, nil veya null olarak...
- Fatih Kabakci: hocam merhabalar,...
- kara: Çok güzel anlatılmış gerçekten teşekkürler...
- Şadi Evren ŞEKER: Bahsettiğiniz şekil dönüşümü...
- Caner: Kullanıcıdan açı girdisi almıyorsanız...
- Furkan Yediyildiz: Algoritmanin mantigi cok güzel...
- havva: çok sağolun çok güzel açıklamalar var tşk...
- Şadi Evren ŞEKER: typedef komutu, bir yapıdan yeni bir...
- fatih kabakci: hocam ben structures ile ilgili bir sorum...
- Şadi Evren ŞEKER: evet, yukarıda açıklanan, herhangi...
- Abdurrahman ulusoy: fi açısından teta kadar döndürme...
- Şadi Evren ŞEKER: Hayır yok, bir noktanın, herhangi...
- Abdurrahman ulusoy: Bu durumda yukarıdaki formüllerin...
- Abdurrahman ulusoy: Merhaba hocam Üstteki mesajımda...
- mustafa ekmekcioğlu: merhaba şadi bey ben hacettepe...
- Şadi Evren ŞEKER: Talebiniz üzerine...
Yakın Yazılar
Pisagor Yöntemi İle Çember (Pythagorean Theorem in Circle Drawing)
Ortanokta Çember Çizimi (Circle Drawing with Midpoint Algorithm)
Kutup Koordintaları ile Çember Çizimi (Circle Drawing with Polar Coordinates)
Binaen Burhan (İnşâa ile İspat , Proof by Construction, Binaenaleyh)
Nazariye (Teori, Kuram, Theorem)
Kutupsal Koordinat Sistemi (Polar Coordinates)
Ekrana Trafik Işıkları Çizen Kod
Öklit Mesafesi (Euclidean Distance, Euclidean Metric)
Pigpen Şifrelemesi (pigpen Cipher)
tıkanıklık önleme (congestion avoidance)
Çin Hatırlatma Teorisi (Chinese Remainder Theorem)
En uzun Ortak Küme (longest common subsequence, Lcs)
parçala fethet yöntemi (divide and conquer)
Kirchoff Teoremi (Kirchoff Theorem)
Sezar Şifrelemesi (Ceaser's Cipher, Shift Cipher, Kaydırma Şifrelemelesi)
Sezar Şifrelemesi (Ceaser's Cipher, Shift Cipher, Kaydırma Şifrelemelesi)
Sezar Şifrelemesi (Ceaser's Cipher, Shift Cipher, Kaydırma Şifrelemelesi)
Sezar Şifrelemesi (Ceaser's Cipher, Shift Cipher, Kaydırma Şifrelemelesi)
Sezar Şifrelemesi (Ceaser's Cipher, Shift Cipher, Kaydırma Şifrelemelesi)
Bağlantılar
