O‘ZBЕKISTON RЕSPUBLIKASI AXBOROT TЕXNOLOGIYАLARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUXAMMAD AL-XORAZMIY nomidagi
TOSHKЕNT AXBOROT TЕXNOLOGIYALARI UNIVЕRSITЕTI
TELEVIZION TEXNOLOGIYALAR FAKULTETI
“Audiovizual tеxnologiyalar” kafеdrasi
“KOMPYUTER GRAFIKASI”
FANIDAN AMALIY MASHG‘ULOT ISHLARINI BAJARISH UCHUN USLUBIY QO‘LLANMA
Toshkent 2017
Mualliflar: Qayumova G., Allamova Sh.Sh
“Kompyuter grafikasi fanidan” amaliy mashg‘ulotlarni bajarish uchun uslubiy qo‘llanma.TATU, Toshkent 2017y.88 b. o‘
Taqdim etilayotgan ushbu uslubiy qo‘llanma o‘z ichiga 18 ta amaliy mashg‘ulot ishlarini qamrab olgan.
“Kompyuter grafikasi” fani bo‘yicha ushbu uslubiy qo‘llanma Tеlеvizion tеxnologiyalar (Audiovizual tеxnologiyalar, Tеlеstudiya tizimlari va ilovalari) va “Kompyutеr injiniringi (“Kompyutеr injiniringi , Multimеdia tеxnologiyalari”) fakulteti talabalariga mo‘ljallangan.
“Kompyuter grafikasi” fanidan amaliy mashg‘ulot ishlari uchun tayyorlangan uslubiy qo‘llanma quyidagi mavzularni o‘z ichiga olgan
Grafik kutubxonalar bilan tanishish.
|
Tеkislikdagi va fazodagi almashtirishlar.
|
Platon jismlarini tasvirlash.
|
Poligonal to‘rlar va ularni bеrish usullari.
|
Ermit, Bеzе, B-splayn egri chiziqlari.
|
Bеzе, B-splayn splayn sirtlari.
| |
Markaziy (pеrspеktiv) proеksiyalash.
|
Brеzеnxеym va Sazеrlеnd algoritmlari. Sohani bo‘yash algoritmlari.
|
Sfеra, konus, silindr, tеkisliklarni nur bilan kеsish algoritmi.
|
Ko‘rinmas sirtlarni tanlash, Robеrts, Z-bufеr, tartiblash, Appеl, Varnok algoritmlari.
|
Bo‘yash (rеndеring) usullari. Fong, Guro usullari.
|
Yorug‘lik. Rang bilan ishlash. RGB, CMY, HSV rang sistеmalar.
|
OpenGL grafik kutubxonasi bilan ishlash
|
DirectX va Direct3D kutubxonalarini dasturiy ilovalarda qo‘llash
|
Har bir amaliy mashg‘ulot ishi uslubiy ko‘rsatmalar, misollarning bajarilishi va variantlar bilan boyitilgan.
Taqrizchilar:
Anarova Sh.A.
|
-
|
Muhammad al-Xorazmiy nomidagi
Toshkеnt axborot tеxnologiyalari univеrsitеti huzuridagi Axborot-kommunikatsiya tеxnologiyalari
ilmiy-innovatsion markazi doktoranti
|
Muxamadiеv A.Ш.
|
-
|
“Audiovizual tеxnologiyalar” kafеdrasi mudiri, f - m.f.n., dotsent.
|
Muhammad al-Xorazmiy nomidagi Toshkent Axborot Texnologiyalari Universiteti 2017
1- amaliy mashg‘ulot. Grafik kutubxonalar bilan ishlash
Ishning maqsadi:
1.1. Dev C++ da grafik kutubxonani o‘rnatish va sozlash
2.1. Dev C++ da grafika bilan ishlovchi funksiyalar
3.1. Dev C++ da grafik imkoniyatlar. Shakllarni bo‘yash
Topshiriq
Har bir talaba jurnaldagi tartib raqami bo‘yicha vazifalarning dasturini tuzishi lozim
Har bir vazifani bajarishda foydalanilgan funksiyalar haqida hisobotda ko‘rsatish lozim
Hisobot shaklida oldin vazifa, uni bajarishda foydalanilgan funksiyalar, dastur kodi va bajarishdan hosil bo‘lgan har xil variantli natijalar
Amaliy mashg‘ulotda beriladigan barcha vazifalarni bitta hisobot shaklida topshiring
Hisobot shakli
Amaliy mashg‘ulot ishining nomi
Amaliy mashg‘ulot topshiriq raqami
Topshiriqni bajarishda foydalanilgan funksiyalar tavsifi
Topshiriq kodi
Topshiriq natijasi (har xil variantlar uchun)
Dasturning elektron versiyasi (Albatta bu dasturlar kompyuterda o‘qituvchiga ko‘rsatiladi. O‘qituvchining talab va takliflariga ko‘ra dastur to‘g‘rilanadi va so‘ngra hisobot tayyorlanadi)
Dev C++ da grafik kutubxonani o‘rnatish va sozlash
Dastlab, Dev С++ dasturlash tilini kompyuterga o‘rnatib olamiz. Dev С++ dasturlash muhitiga grafik muhitni o‘rnatish uchun bizga uchta fayl kerak bo‘ladi. Bular:
Graphics.h
libbgi.a
winghim.h
Ushbu berilgan fayllarni quyidagi ketma-ketlikda kataloglarga qo‘shib chiqamiz.
Graphics.h va winglim.h fayllarini C:\dev-Cpp\include katalogiga qo‘shing.
Libbgi.a faylini c:\dev-cpp\lib\ katalogiga ko‘chiring
Dev C++ ni ishga tushiring va tools bo‘limidan comiler options ni tanlang
Add these command to the linker command line buyrug‘iga bayroqchani o‘rnating va quyidagi satrni qo‘shing (1.1-rasm):
-lbgi -lgdi32 -lcomdlg32 –luuid -loleaut32 -lole32
1.1- rasm. Dev C++ da grafika bilan ishlash uchun sozlash.
1.2. DevC++ da grafika bilan ishlovchi funksiyalar
Grafik rejimda koordinatalar sistemasi (0,0) dan boshlanadi.Grafika bilan ishlashda quyidagi funksiyalar bilan ishlash mumkin:
void initwindow(int width, int height)
|
grafik chizish uchun eni va balandligi bo‘lgan oyna ochish. Agar uni dasturga kiritmasangiz xatolik sodir bo‘lishi mumkin.
|
void closegraph()
|
grafik muhitni to‘xtatish
|
void line (int x1, int y1, int x2, int y2)
|
funksiyasi (x1,y1) va (x2,y2) nuqtalarni tutashtiruvchi kesma chizadi.
|
void rectangle(int x1, int y1, int x2, int y2)
|
funksiyasi joriy rang bilan yuqori chap burchagi (x1,y1) va quyi o‘ng burchagi (x2,y2) nuqtalar bo‘lgan to‘g‘ri to‘rtburchak chizadi.
|
void circle (int x, int y, int r)
|
funksiya markazi (x,y) nuqtada bo‘lgan radiusi r aylana chizadi.
|
-void arc (int x, int y, int stangle, int endangle, int xradius, int yradius)
| |
ellipse (int x, int y, int stangle, int endangle, int xradius, int yradius)
|
ellips yoyini chizish.(x,y)-elips markazi, stangle, endangle- yoyning boshlang‘ich va oxirgi burchaklari;
|
void putpixel (int x, int y, int color)
|
funksiyasi (x,y) kordinatasiga color rangli nuqta qo‘yadi
|
int getpixel(int x, int y)
| |
int getcolor ()
|
funksiyasi joriy rangni aniqlaydi
|
void setbkcolor()
|
funksiyasi fon rangini aniqlaydi
|
void cleardevice()
|
funksiyasi grafik ekranni tozalab kursorni (0,0) nuqtaga o‘rnatadi
|
- void setcolor(int color)
|
funksiyasi chiziq rangini o‘rnatadi.
|
1- misol. Aylana , to‘rtburchak va satrni ekranga chiqarish
#include
#include
int main ()
{
initwindow(500,500);
rectangle(100,100,400,400);
circle(250,250,215);
outtextxy(225,245, “birinchi grafik dastur”);
system(“pause”);
closegraph();
return 0;
}
Natija:
1.3. DevC++ da grafik imkoniyatlar. Shakllarni bo‘yash
Shakllarni bo‘yash uchun quyidagi funksiyalardan foydalanamiz:
- void setfillstyle(int stili, int rangi)
|
funksiyasi color rangi bilan style uslubida shaklni to‘ldiradi
stil qiymatlari quyidagicha
0 – shaffof;
1 – to‘liq bo‘yalgan;
3..6 - qiya chiziqli;
7..8 – setka;
9..11- nuqtali.
|
-bar (x1, y1, x2, y2)
|
- to‘rtburchak soha chizish(oq rangli); x1, y1- to‘rtburchak diogonali boshi koordinatasi; x2, y2 - to‘rtburchak diogonali oxiri koordinatasi.
|
Ranglarni dasturda quyidagi nomeri bo‘yicha berishimiz mumkin:
Do'stlaringiz bilan baham: |