Amiga Dünyası sayı 9, sayfa 42

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 42

=COLOUR KOMUTU: [(değişken) = COLOUR ((renk register'ı))] olarak kullanılır. Komut, 0 ile 31. renk register'ında bulunan renk değerini 'değişken'e atar.

Curs Off: Flash Off C=Colour(0) A=Colour(l) B=Colour(2) Repeat C=C+1 :A=A+1 :B=B+1 Locate 0,0: Print "dis ekran rcngi=";Hex$(Colour(0)3 ) Locate 0,1 : Print "sayfa rengi=";Hex$(Colour( 1 ),3) Locate 0,2 : Print "yazi rengi=";Hex$(Colour(2),3) Colour0.C Colour 1 ,A Colour 2,B Wait 10 Until Mouse Key _________________________

PALETTE KOMUTU: [PALETTE renk listesi] olarak kullanılır. PALETTE, COLOUR komutuna benzer, ama daha da geliştirilmiştir. Renk değerlerini, renk register'larına yüklemeye yarar. Sadece bir komutla birden fazla renk değerini girebilme özelliği vardır. Böylece, 64 tane register için ayrı ayrı COLOUR komutu kullanmak gerekmez.

[PALETTE $ff0,$F00,$666] yazıldığında, ilk üç register değeri değiştirilir. PALETTE komutundaki değer değişimi, 0. register'dan başlayarak yapılır.

Diyelim ki; sadece, 0 ile 3. renk register'ı değişecek ve aradaki register'lar değişmeyecek. Bunun için, [PALETTE $666,,$400] yazmalısınız. Komutta, boş bırakılan değerler değiştirilmez; sadece verilen değerlerin register'ları değişir. ____________

Palette $FFF,$FFF,$0 Print "YAZI" ______________________ Şimdi biraz da çizimle ilgili komutlara göz atalım. GR LOCATE KOMUTU:

[GR LOCATE (x),(y)] olarak kullanılır ve grafik kursorunun yerini belirler. Yani çizimin nereden başlayacağı, bu komutla belirtilir. 'x', x koordinat değerini belirler. Bu da, başka özel bir ekran açılmamış ise, 0 ile 320 arasında değişir, 'y' ise, y koordinat değeridir ve normal koşullarda 0 ile 200 arasında bir değer alır. Bunun anlamı, AMOS'un normal ekranında 200*320 tane nokta olduğudur. Tabii ki, diğer ekranlarda bu 640*200 ya da 640*400'e kadar çıkartabilmektedir.

Colour 1,$0 Curs Off Gr Locate 100,100 Draw To 200,200 ___________________ =XGR =YGR KOMUTLARI [(değişken) = XGR] [(değişken) = YGR] olarak kullanılırlar. Grafik kursorunun ye- rini değişkenlere atarlar.

Curs Off: Colour 1,$0 Circle 100,100,20 Print Xgr,Ygr

PLOT KOMUTU: [PLOT (x),(y),(renk register'ı)] olarak kullanılır. Çizimin en kolay ve en temel komutlarından biridir. Ekrana tek bir nokta koymaya yarar. 'x', x koordinatının değerini; 'y', y koordinatının değerini ve 'renk register'ı' da hangi renk register'ının kullanılacağını gösterir. Verilen değerlere karşılık gelen yere, verilen renk register'ından renk değerini alarak bir nokta koyar. Eğer renk register'ı verilmezse, INK komutu rengini değiştirmeden, noktayı, verilen değerlere koyar.

Curs Off: Colour 1,$0 Repeat Plot Rnd(319),Rnd(199),Rnd(16) Until Mouse Key___________________ =POINT KOMUTU: [(değişken)=POINT((x,y))] olarak kullanılır. Verilen değerlerdeki renk değerini değişkene yükler.

Curs Off: Colour 1,$0 Circle 100,100,20 Paint 100,100,1 C=Point(100,100) Print "100,100 KOORDİNATLARINDAN RENK REGISTERI=";C ______________

DRAW KOMUTU: DRAW komutu, ekrana çizgi çizmeye yarar. [DRAW (X1),(Y1) TO (X2),(Y2)] olarak kullanıldığında; X1, Y1 koordinatından başlar ve X2, Y2'ye kadar düzgün bir çizgi çizer. [DRAW TO (X3),(Y3)] olarak kullanıldığında da, son kalınan yerden (grafik kursorundan) X3, Y3 değerine kadar devamlı bir çizgi çizer.

Curs Off : Flash Off

Colour 1,$0 XE=1 YE=2 VE=1 TE=3 Z=0 Repeat InkRnd(16) Draw X,Y To V,T If X>310 Then XE=-(Rnd( 10)) If Y> 190 Then YE=-(Rnd( 10)) If V< 10 Then VE=(Rnd(10)) If T<10ThenTE=(Rnd(10)) If V>310ThenVE=-(Rnd(10)) If T>190 Then TE=-(Rnd(10)) If X< 10 Then XE=(Rnd( 10)) If Y< 10 Then YE=(Rnd(10)) X=X+(XE)

Y=Y+(YE) V=V+(VE) T=T+(TE) Z=Z+1

If Z=200 Cls:Z=0 EndIf Until Mouse Key __________________ BOX KOMUTU: [BOX (X1),(Y1) TO (X2),(Y2)] olarak kullanılır. Ekrana boş bir dikdörtgen çizmeye yarar. X1, Y1 dikdörtgenin sol üst köşesinin koordinatları; X2, Y2'de dikdörtgenin sağ alt köşe koordinatlarıdır.

Re dikdörtgen boyutlarini mouse pointer ile ayarlayin m Do If Mouse Key=l KOOR X1=X:Y1=Y Gr Writing 2 While Mouse Key=l BoxXI YlToX.Y . KOOR BoxX YlToX,Y l, Wend Gr Writing 1 BoxX YlToX,Y l, Endl f Loop Procedure KOOR Shared X,Y X=X Screen(X Mouse): Y=Y Screen(Y Mouse) EndProc_______________________________________

POLYLINE KOMUTU: POLYLINE, DRAW komutuna çok benzer. Aralarındaki fark, POLYLINE komutu ile birden çok çizgi elde etme olanağı olmasıdır.

[POLYLINE (X1),(Y1) TO (X2),(Y2) TO (X3), (Y3) ......] olarak kullanılır. İlk koordinattan başlayarak verilen koordinata kadar düzgün çizgiler çizer.

POLYLINE, aşağıdaki örnekte göreceğiniz gibi birçok DRAW yazma derdini yok etmiştir.

Draw 10,10 To 20,20 Draw To 30,30 Draw To 40,40 yazmak yerine, daha basit olarak;

Polyline 10,10 To 20,20 To 30,30 yazarak aynı sonucu alabiliriz.

Curs Off: Colour 1,$0 Timer=0 ForN=0To 100 InkRnd(15) Polyline Rnd(320),Rnd(2O0) To Rnd(320),Rnd(200) To Rnd(320),Rnd(200) Next____________________________

CIRCLE KOMUTU: [CIRCLE (x),(y),(r)] olarak kullanılır. Ekrana çember çizmeye yarar. X ve Y çemberin merkez koordinatlarıdır. R de çemberin yarı çapıdır. Verilen koordinatlarda R yarı çapı ile çember çizer.

Curs Off: Flash Off Colour 1,0 XE=1 : YE=2 : VE=1 : TE=3 : Z=0 Repeat Ink Rnd(16) Gr Writing 2 Circle X,Y, 10 Circle X,Y, 10 If X>310 Then XE=-(Rnd(10)) If Y>190 Then YE=-(Rnd(10)) If X<10 Then XE=(Rnd(10)) If Y<10 Then YE=(Rnd(10)) X=X+(XE): Y=Y+(YE) Until Mouse Key ___________________ ELLIPSE KOMUTU: [ELLIPSE (x),(y),(r1),(r2)] olarak kullanılır. Ekrana elips çizmeye yarar. X ve Y merkez koordinatlarıdır. Bu koordinatlara R1, R2 yarı çaplarında bir elips çizer. Eğer R1>R2 ise, yatık; R2>R1 ise dik bir elips olur. R1=R2 olursa bir çember olur.

Curs Off: Flash Off Colour 1,$0 Repeat InkRnd(15) Rl=Rnd(90):R2=Rnd(90) X=Rnd(200): Y=Rnd(100): Ellipse X,Y,R1,R2 Until Mouse Key AMOS, çizgilerinizi değişik stillerde ekrana yansıtma olanağı da sağlamaktadır. Bu da SET LINE komutu ile gerçekleştiri- lir.

SET LINE KOMUTU: [SET LINE (maske)] olarak kullanılır. SET LINE komutu ile çizgi stili değiştirilebilir ve DRAW, BOX ve POLYLINE gibi komutlarda bu stil kullanılabilir. "Maske" 16 bitlik bir binary (ikili sayı sistemi) sayıdır. Bu sayıdaki 1, rengin olduğu noktalardır ve o noktada INK ya da başka bir komutla verilen renk var anlamına gelir.

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