O„zbekiston respublikasi oliy va o„rta maxsus ta‟lim vazirligi toshkent davlat iqtisodiyot universiteti



Yüklə 3,55 Mb.
Pdf görüntüsü
səhifə42/93
tarix20.11.2023
ölçüsü3,55 Mb.
#165659
1   ...   38   39   40   41   42   43   44   45   ...   93
Kompyuter grafikasi va dizayn

5.2. Brezenxeym algoritmlari 
Brezemxem algoritmi boshlanishda raqamli grafik qurush uchun ishlangan
lekin u EPT bilan rastrli qurilmalarda foydalanish uchun ham qo‗l keladi. Bu algoritm 
kesmani ko‗rsatish uchun optimal rastrli koordinatalarni tanlaydi. Ish jarayonida 
koordinatalardan biri – yoki x, yoki u (burchak koeffitsiyentiga bog‗liq holda) birga 
o‗zgaradi. Boshqa koordinatalarni (yoki 0, yoki 1 ga) o‗zgarishi kesmani haqiqiy 
joylashish nuqtasi va setkani yaqin koordinatalari orasidagi masofaga bog‗liq. 
Bunday masofani biz xatolik deb ataymiz.
Algoritm shunday qurilganki, unda faqatgina bu xatolikni belgisini tekshirish 
talab qilinadi. Bu birinchi oktantdagi kesma uchun illyustratsiya qilingan, 0 dan 1 
gacha diapazonda yotadigan burchak koeffitsiyentli kesma uchun. Agar kesmani 
burchak koeffitsiyenti (0,0) nuqtalarda 1/2 dan ko‗p bo‗lsa, u holda uning x=1 to‗g‗ri 
chiziq bilan kesishishi, u=1 to‗g‗ri chiziqqa yaqin u=0 to‗g‗ri chiziqqa qaraganda u=1 
to‗g‗ri chiziqqa yaqin joylashadi. Shunday qilib (1,1) rastr nuqtasida, (1,0) nuqtaga 
nisbatan kesma yo‗nalishi yaxshi approksimatsiyalanadi. Agar burchak koeffitsiyenti 
1/2 dan kam bo‗lsa, unda teskarisi to‗g‗ri 1/2 ga teng bo‗lgan burchak koeffitsiyenti 
uchun istalgan tanlov yo‗q. Bunday holatda algoritm (1,1) nuqtani tanlaydi.
Hamma kesmalar ham rastr nuqtasidan o‗tavermaydi. Bunday holatda 3/8 
tangnes burchak ostida egilgan kesma birinchi (0,0) rastr nuqtasidan o‗tadi va ketma-
ket uchta pikselni kesib o‗tadi. Xuddi shunday kesmalarni diskret piksellarda 
tasvirlangandagi xatoliklarini hisoblash keltirilgan. Shunday ekan imkon boricha 
faqat xatolik belgilarini tekshirish, unda uning boshlang‗ich - 1/2 ga teng deb 
o‗rnatiladi. Shunday qilib, agar kesmaning burchak koeffitsiyenti 1/2 ga teng yoki 
katta bo‗lsa, unda (1,0) koordinatali keyingi rastr nuqtasining xatolik qiymati 
quyidagicha hisoblanishi mumkin: 
e = e
0
+ m 
m – burchak koeffitsiyenti. Bizning holatda 1/2 – xatolikning boshlang‗ich 
qiymati e = 1/2 + 3/8 – 1/8. 
Shunday qilib e manfiy, kesma piksel markazining pastki qismidan o‗tadi. 
Shunday qilib, piksel xuddi shu gorizontal sathda kesma holati yaxshi 


77 
approksimatsiyalanadi, shuning uchun u oshib ketmaydi. Xuddi shunday xatolikni 
kengligi (2,0) 
e =1/8 + 3/8 + 1/4. 
Rastr nuqtasida hisoblaymiz. 
Bu yerda bo‗yash rangi va kontur rangi – qora rang (kod 0). Algoritmni 
nuqtadan boshlab bo‗yash piksellar to‗lqini rom ko‗rinishida tarqala boshlaydi. Bitta 
tsiklda OneStep rom peremetri chiziqlari atrofi bo‗yaladi (yoki figuraning 
murakkabligiga bog‗liq holda bir nechta romlar). Joriy to‗lqin fronti piksel 
koordinatalarini saqlash uchun ishchi massiv sifatida hajmi 10000 elementli dinamik 
massiv qo‗llanilgan. Massivlarning maksimal hajmi kontur o‗lchami bilan shartlanadi 
va empirik hisoblanadi.

Yüklə 3,55 Mb.

Dostları ilə paylaş:
1   ...   38   39   40   41   42   43   44   45   ...   93




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin