Program Döküm Eki sayı 4, sayfa 4

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 4

arasında nasıl gidip geleceğimizi görelim. SYS 49 378 ile grafik ekranı çağırıyoruz; SYS 49411 ile de yazı ekranına geri dönüyoruz.

Eğer bilgisayarı açtıktan hemen sonra grafik ekranına geçerseniz, ekranda bir sürü garip çizgiler göreceksiniz. Ekranı temizlemek için şu komutu kullanacağız: SYS 51979

Çizim işlemlerine geçmeden önce, çizim yapacağımız renkleri nasıl saptayacağımızı da görelim. Bunun için SYS 52001, sayı komutunu kullanacağız. Burada verilmesi gereken sayıyı ise, 0-15 arasındaki ekran rengi ile 0-15 arasındaki çizgi rengi kodunun 16 katını toplayarak elde edeceğiz. Örneğin açık gri (15) ekranda kırmızı (2) ile çizim yapacaksak, sayımız 16*2 + 15 olacaktır.

Ekranımızı silip renklerini ayarladıktan sonra sıra çizimleri yapmaya geldi. Ancak temel cisimlerin nasıl çizildiğini görmeden önce, bu cisimlerin görünüşlerinin nasıl etkilendiğini görelim.

Örnek grafiklerden de göreceğiniz gibi, cisimlerin koyulukları iki şekilde sağlanıyor. İçleri ya düzenli ya da tesadüfi yerleştirilmiş noktalarla dolduruluyor. Bunu ayarlamak için, POKE 838, sayı komutunu kullanıyoruz.

Eğer sayı yerine 1 verirsek, bilgisayarın bundan sonra yapacağı taramalar düzenli olacaktır. Tekrar sıfır verdiğimizde ise, düzensiz tonlama başlayacaktır.

Bir başka önemli nokta, COMMODORE 64'ün ekran düzeniyle ilgili. 320x200'lük ekran, televizyon ekranında göründüğünde, herbir noktanın yüksekliği genişliğinden 4:3 oranında fazla olmaktadır. Bu da, aslında bir küre çizdiğimiz halde, bir yumurta şekli yaratmaktadır. Bunu hesaplama yoluyla engelleyebiliriz. Eğer POKE 839,0 yapıp çizimlerimize devam edersek, normalden farklı bir şey olmayacaktır; biz yine yumurta kılıklı kürelerle uğraşırız. Ancak POKE 839,1 yaparsak, bu sefer orantılı bir ekran elde ederiz ve kürelerimiz gerçek küre gibi çizilir. Eğer orantılı ekran kullanıyorsanız, Y-koordinat değerleri için 0-239 arası sayılar verebilirsiniz. Normal ekranda ise bu 0-199'dur. X-koordinat değerleri içinse daima 0-319 değerleri geçerli olacaktır. Sırası gelmişken iki noktayı belirtelim. X değerleri ekranda soldan sağa, Y değerleri ise aşağıdan yukarıya gitmektedir. Ve eğer belirttiğimiz koordinat sınırları dışına çıkarsanız, garip bazı şekillerin oluşturulduğunu görebilirsiniz.

Ve bir diğer faktör olan ışık yönünü de, POKE 898, sayı ile ayarlayabilirsiniz. Eğer sayı yerine 0 verirseniz ışık önden gelecektir, 1 verirseniz de arkadan.

Artık ilk şeklimize geçelim. Cismimiz küre. SYS 52119,X,Y,R komutu ile merkezi, belirlediğimiz X,Y koordinatlarında olan ve R yarıçapına sahip bir küreyi daha önce belirlediğimiz ışık, tonlama ve orantı kriterlerine göre çizebiliyoruz (Örn: SYS 52119,160,100,50).

Bir sonraki cisme simit diyebiliriz. Simitin tam ortasını merkez (X,Y) kabul edersek, bu merkezden simitin iç kenarına kadar olan uzaklığa R1, dış kenarına olan uzaklığa da R2 diyebiliriz. İşte bu simiti, SYS 52141,X,Y,R1,R2 ile çizebiliriz (Örn: SYS 52141,160,100,20,50).

Bundan sonra üç cisim daha var. Bunların ilk ikisi aslında da simitin değişik görünümleri. Demin simite tepeden bakmıştık. Şimdi de yandan bakalım.

Ortaya çıkacak olan cisim sosise benzetilebilir. Ayrıca bu sosisi yatay veya dikey durumunda çizebiliriz. Yatay sosis için kullanılacak komut, SYS 52186,X,Y,R1,R2 olacaktır. Dikey sosis içinse, SYS 52189,X,Y,R1,R2 kullanacağız. Değişkenlerin anlamları simitteki gibidir (Örn: SYS 52186,160,100,20,50).

Diğer cisme makara diyebiliriz. Bu şekli tanımlamak biraz karışık. Biraz iştahınızı açacak bir tanım yapalım. Şimdi dolgunca bir simit alın, masaya koyun. Sonra da ortasındaki boşluğu, üstünden taşacak kadar jöle koyup doldurun. Bekleyin jöle donsun. Sonra simiti uzaklaştırın. Ortada kalan jölenin biçimi, simitin iç ve dış yarıçaplarına göre değişebilen bir makara görüntüsünü alacaktır. Bir başka deyişle, bu komut ile ölçüleri verilmiş bir simitin aslında boş olan kısmının görüntüsü üretilecektir. Dikey makara üretmek için SYS 52203,X,Y,R1,R2, yatay makara için ise SYS 52206,X,Y,R1,R2 (Örn: SYS 52203,160,100,20,50).

Son cismimiz ise, yatay ve dikey silindir olacak. Silindirin yarıçapına R, yüksekliğine de H diyelim. Silindirimizin tam ortasını, yani merkezini de X,Y koordinatlarıyla gösterelim. O zaman SYS 52150,X,Y,R,H/2 ile dikey silindir, SYS 52153,X,Y,R,H/2 ile de yatay silindir çizebilirsiniz (Örn: SYS 52150,160,100,20,30).

Şimdi programın değişik bir özelliğini görelim. Bu özelliğe pencereleme diyebiliriz. Bu işlemle, çizimi yapılacak cismin merkez koordinatlarından yukarı, aşağı, sağa ve sola doğru olan kaç noktalık alanın çizimde kullanılabileceği belirlenebilir. Örneğin, bir simit çizmeden önce bu sınırlar için sola doğru 255, yukarıya doğru 255, sağa doğru 0 ve aşağıya doğru 0 değerlerini verirseniz, simitin sadece sol üst çeyreği çizilebilecektir. Böylece çizeceğimiz cismin ne kadarının çizileceğini de saptayabiliyoruz. Bunun için çi-

Klavyeyle gezinmek için ← ve → tuşları.