15-mavzu. Grafika va multimedia dasturlash tizimlarida qo‘llash. Texnik tizimlarda integrallashgan muhitda mavjud bo‘lgan ma’lumotlar bazasini yaratish va qayta ishlash. Tayanch so’z va iboralar


Ekranda chizmalarni harakatlantirish


Download 47.29 Kb.
bet5/10
Sana31.01.2024
Hajmi47.29 Kb.
#1832204
1   2   3   4   5   6   7   8   9   10
Bog'liq
15-mavzu. Grafika va multimedia dasturlash tizimlarida qo‘llash.

Ekranda chizmalarni harakatlantirish
Ekranda chizmalarni harakatlantirish uchun kerak boladigan protseduralar:
1.imagesize (x1, y1, x2, y2) – ekranning chap yuqori nuqtasi va ung pastki nuqtasi
koordinatalaridan to’g’ri to’rtburchakli sohani saqlash uchun kerak bo’ladigan xotiraning
ulchami (baytlarda olinadi);
2. getimage (x1, y1, x2, y2, p) – dinamik xotiraning berilgan r maydonida to’g’ri to’rtburchakli
tasvirni saqlash. Bu yerda r – tasvir saqlanadigan joyning adresini saqlaydigan o’zgaruvchi, ya’ni
ko’rsatkich.



3. putimage (x, y, p, m) – ekranning berilgan joyiga tasvirni chiqarish; bu yerda x va y –


xotiraning p maydonidagi tasvirdan nusxa ko’chiriladigan ekran maydonining chap yuqori
nuqtasi; m – tasvirni ekranga chiqarish rejimi. Agar:
m = 0 (NormalPut) - tasvirni ko’chirish. Bunda eskichi uchib, yangisi paydo bo’ladi (xuddi yurib
ketayotgandek) m = 1 (XorPut) m = 2 (Orput) – m = 3 (AndPut) Masalan: quyidagi dasturda
kvadrat ichidagi bo’yalgan aylana ekran bo’ylab harakatlanadi.
# include < graphics.h >
# include
# include void main ( ) { int gd = 0, gm, I, j, s;
int *a;
initgraph(&gd,&gm,"");
setcolor ( 4 ); circle ( 30, 30, 20 );
putpixel ( 30, 30, 2);
rectangle ( 10, 10, 50, 50);
s = imagesize ( 9, 9, 51, 51);
*a = new int;
*a = s;
getimage (9, 9, 51, 51, a);
for ( i = 0; i < = 585; i + +) { putimage ( i, 10, a, 0);
sound (20);
delay (10);
nosound ( );
}
for ( j = 10;
j < = 420;
j + +) { putimage(585, j, a, 0 );
sound ( 30 );
delay (10);
nosound( );
} for (i = 585;
i > = 10; i - -) { putimage(i, 420, a, 0);
delay ( 10 );
}
for (j = 420; j >10; j - -) { putimage(10, j, a, 0);
delay( 10 );
} delete a;
getch();
//closegraph( );
}


Download 47.29 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling