11.Ders:Farklı Geometrik Şekiller
Merhaba! Bu yazımızda sizlerle birlikte biraz daha çizgilerle uğraşacağız ama bu sefer işin içine döngüleri de katarak 🙂 Sonra da belli başlı geometrik şekilleri otomatik nasıl çizdirebiliriz onun üzerinde duracağız. Haydi başlayalım o zaman.
ÖRNEK
|
|
İlk dört basamağı yapabileceğinizi düşünüyorum. Eğer takılırsanız önceki dersleri inceleyebilirsiniz. 5. basamaktaki bu çizgileri for döngüsü ile nasıl çizdirilir onu anlatmak istiyorum. İlk olarak neden While değil de For döngüsünü kullanıyoruz. Bildiğiniz gibi döngü de tekrar sayısı belliyse o zaman For döngüsü kullanılır. Bizimde tekrar sayımız belli çünkü aynı boyutta 4 çizgi çizeceğiz. O zaman bir değişken belirleyeceğiz buna sayi diyelim o değişken for döngüsü boyunca 1 ‘den 4’e kadar değerler alacak. Peki şimdi gelelim çizgilerin x ve y değerlerine. Dikey çizgi çizdiğimize göre x başlangıç ve bitiş değerleri aynı olacak ama y değerleri değişecek. y başlangıca 100 desek boyu 400 piksel olacağı için 100+400=500 bu da y bitiş değeri olacak. Çizeceğimiz 4 çizgide aynı boyutta olacağı için y değerleri hepsinde aynı olacak. Peki gelelim x değerlerine x başlangıç ve bitiş aynı olmalı çünkü dikey çizgi çiziyoruz. Ama her çizgi için aynı değil. ilk çizgide 100 olsa x değeri 2. çizgide 200 olmalı çünkü aralarında 100 piksel mesafe olması gerektiği için. Demek ki döngüde değişecek değerimiz bu. 100,200,300,400 diye gidecek x değerimiz. Biz bu değeri sayi değişkenimizi 100 ile çarparak bulabiliriz. Hadi kodları incele.
SIRA SİZDE! | |
|
Gelelim geometrik şekillere… Small Basic uygulamasında geometrik şekiller çizerken kullanacağınız komutlar listesi şöyle ;
GraphicsWindow.DrawRectangle : İçi boş Dörtgen çizer.
GraphicsWindow.FillRectangle : İçi dolu Dörtgen çizer.
GraphicsWindow.DrawEllipse : İçi boş elips ,daire çizer
GraphicsWindow.FillEllipse : İçi dolu elips ,daire çizer
GraphicsWindow.DrawTriangle : İçi boş üçgen çizer
GraphicsWindow.FillTriangle : İçi dolu üçgen çizer
GraphicsWindow.BrushColor : Çizgiler arasındaki alanı istenilen renk ile doldurur.
Hadi örneklerle bu komutları tanıyalım.
ÖRNEK
|
Önce içi boş bir dikdörtgen ile başlayalım. Bunun için GraphicsWindow.DrawRectangle komutunu kullanacağız. Bu komutu yazarken;
GraphicsWindow.DrawRectangle( x başlangıç , y başlangıç,genişlik,yükseklik)
Soruda verilen değerleri yazarsak komut aşağıdaki gibi olur.
Önce içi dolu bir dikdörtgen ile başlayalım. Bunun için GraphicsWindow.FillRectangle komutunu kullanacağız. Yalnız bu komuttan önce dikdörtgeni hangi renkle dolduracağımızı belirlemek isterseniz. BrushColor komutunu kullanmalıyız. Bu komutu yazarken;
GraphicsWindow.FillRectangle( x başlangıç , y başlangıç,genişlik,yükseklik)
İçi boş ve dolu dikdörtgen çizerken kullandığımız komutlarda sadece Soruda verilen değerleri yazarsak komut aşağıdaki gibi olur.
Elips veya çember çizeceğimiz zamanda dikdörtgenle komut yapısı aynı sadece DrawEllipse ya da FillEllipse olarak komut adını değiştiriyoruz.
Gelelim üçgen çizmeye… Üçgenin bildiğiniz gibi 3 köşesi vardır. Bu 3 köşesinin x ve y değerleri birbirinden farklıdır. Üçgen çizeceğimiz zaman ;
GraphicsWindow.DrawTriangle ( x1,y1,x2,y2,x3,y3)
Yukarıdaki formüle doğru x ve y değerlerini girersek üçgenimiz çizilmiş olur. Hadi resimde verdiğim üçgeni çizmek için gerekli komutları inceleyelim.
ÖRNEK
|
|
Bu alıştırmayı yapmaya ben önce kağıt üzerinde şekilleri çizip x ve değerlerini kafamda oluşturmaya çalıştım. Sonra ilk olarak üçgeni , sonra çemberi ve en son kareyi çizdim. Tam ortalamam gerektiği zaman şekillerin x ve y değerlerinle oynadım. Eğer sağa sola oynatmam gerekiyor x değerini , yukarı aşağı oynatmam gerekiyorsa y değerini değiştirdim. Sonuçta aşağıdaki kodları elde ettim. Sizin şekillerinizin büyüklükleri farklılık gösterebilir. Bu da x ve y değerlerinizin farklı olmasına neden olabilir unutmayı !
SIRA SİZDE! |
|
Şekilde gördüğünüz çizim For döngüsü kullanarak yapınız.
İpucu : 10 çember var. En küçük çember başlangıç x=190 , y=190 çember genişlik ve yükseklik = 20 dir. |