Mavzu: Dastur tuzuvchi uchun grafik interfeys tushunchasi C++ da grafika



Download 52,5 Kb.
bet2/3
Sana23.03.2022
Hajmi52,5 Kb.
#506991
1   2   3
Bog'liq
Mavzu Dastur tuzuvchi uchun grafik interfeys tushunchasi C da

for(int i=0; i<30; i++)
{
circle(b.x, b.y, b.r+i);
}
Yozib ko'ring. Bunda aylanani ichkarisidan bitta bittalab chizib chiqilishi ko'zga ko'rinmasada, chetdagi aylanalar o'chirilip, qayta chizilishi haddan tashqari xunuk ko'rinadi. Bu effektni sal kamaytirish yo'li bor. Buni double buffering deyishadi. nazariyasini o'qishni istamasangiz, amaliyotga to'g'rida to'g'ri o'ting.
Nazariya: Tasavvur qiling, dastur qiladigan ishni juda katta tezlikda qo'lsa qilyapsiz. Bunda siz bitta qog'oz olib, qandaydir odamga uni ko'zini oldida rasm chizyapsiz va ko'zini oldida o'chirip, qaytadan chizyapsiz. Bu holatda ko'rvotgan odamga albatta g'alati tuyuladi. Uni sal qulayroq qilish usuli - Ikkita varoq ishlatish. Tasavvur qiling, A va B varoqlar bor. Siz A varoqga rasm chizib, foydalanuvchiga berasiz va B varoqga chizishni boshlaysiz. B ga rasm chizib bo'lip, A varoq bilan B ni almashtirasiz. Endi B varoqga chizyapsiz, foydalanuvchi B varoqga qarayapti. Shunday qilib, foydalanuvchi faqatgina tayyor chizilgan rasmlarni ko'radi. O'chirish, chizish ishlari esa ko'rinmaydi. Agar buni tushunmagan bo'lsangiz, hechqisi yo'q. Dasturda realizatsiyasini ko'ring:
Amaliyot: while sikli tepasiga int toifasida o'zgaruvchi e'lon qilamiz. Misol uchun p. Bu varoq raqami.
int p = 0;
while sikli ichida chiziladigan varaqni tanlaymiz va p ni 1 bo'lsa 0, 0 bo'lsa 1 ga aylantiramiz.:
setactivepage(p);
p = 1 - p;
setvisualpage(p);
Bunda setactive page funksiyasi chizilayotgan varaqni tanladi, setvisualpage esa ko'rinayotgan varaqni tanladi.

Qo'shimcha: Liniyalar qalinroq bo'lishi uchun siklga kirmasdan turib ularni qalinlashtirishni maslahat beraman:


setlinestyle(0, 1, 3);
Man Dev- C++ dan umuman qoniqmagandim, double buffering dan foydalanganimdan keyin, atrofimdagilarga sal yaxshiroq ko'rinishni boshlagan bo'sayam, menga baribir yoqmadi. Lekin dev-cpp grafikasi o'rganish uchun juda qulay ekan. Aynan talabalar o'rganishi uchun mos keladigan kutubxona ekan.
Bu kutubxonada oddiyroq o'yin ham tuzdim. Kelajakda shu o'yin haqida yozishim mumkin, lekin bu kutubxonaga qiziqish qolmagan. Undan keyin, Androidga o'yin tuzish uchun boshqa kutubxonani o'rgandim. Kelajakda u kutubxona haqida ham maqola yozishim mumkin.
C++ grafika texnomantanlov texnomannoyabrtanlov texnomannoyabr2018 texnoman4yosh  Dizayn, Grafika va Ovoz 27-Noyabr 22:19 6771




Download 52,5 Kb.

Do'stlaringiz bilan baham:
1   2   3




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish