Uch o‘lchovli grafikaning matematik asoslari
Virtual fazoda xajmli ob’ektlarni yaratish usullarini o’rganuvchi soha uch o’lchovli (3D) grafika deb nomlanadi.
Bunda uch o`lchovli grafikaning dasturiy ta’minoti tekis ekranda (x,y,z) (3D) koordinatalari sistemasida tasvirlarni hosil qilish imkoniyatini beradi. Uch o`lchovli model chiziqlar va egri sirtlar bilan o`zaro bog`langan ko`pgina nuqtalar yordamida yaratiladi
3D (inglizcha three dimension - uch o`lchamli jumlasidan olingan). Uch o`lchamli grafika yordamida hajmga ega jismlar tasvirlanadi.Jismning fazoda egallagan o`rni mayda kublar bilan to`ldiriladi. Agar bu kublar yetarlicha kichik bo`lsa, inson ko`zi ularni ilg`amaydi va kublar yaxlit bir jism sifatida ko`z o`ngimizda gavdalanadi. Uch o`lchamli grafikadan animatsiya, kompyuter o`yinlari va virtual (xayoliy) borliq yaratishda keng foydalaniladi. Virtual borliq, asosan, maxsus bosh kiyim – shlemlarda tasvirlanadi. Uch o`lchovli tasvirdagi piksel “voksel” (voxel) deb yuritiladi – volume element (hajm elementi) so`zining qisqartma shaklidir. To`g`ri burchakli to`rdagi har bir voksel to`g`ri burchakli parallelepipedni o`rtacha yorug`lik darajasini beradi.
3D o`lchovli fazodagi voksel.
Kompyuter grafikasida fazodagi uch o`lchovli obyektlarni sirtlarini tasvirlashni ikkita usuli keng tarqalgan: Poliganal setkalar va bikubik parametrik bo`laklar. Poligonal setka bu fazoviy obyektni tasvirlovchi o`zaro bog`liq balandliklar, qirralar va yoqlar (ko`pburchaklar) to`plami. Nuqtalar (uchlar) qirralar bilan tutashtiriladi,ko`pburchaklar esa uchlar va qirralar bilan ifodalanadi. Politonal setkalarni kurishni 3-ta usuli mavjud:
1. Ko`burchaklarni oshkora berish. Har bir ko`pburchak uning uchlari koordinatalari bilan beriladi, ya’ni
P=((X1,Y1,Z1),(X2,Y2,Z2),…(Xn,Yn,Zn))
Uchburchakni ifodalovchi (aniqlovchi) uchlar ketma-ket saqlanadi va qirralar bilan tutashtiriladi, shu jumladan oxirgi va birinchi uchlar ham. Har bir alohida ko`pburchak uchun bu usul albatta effektiv (qulay), hamma umumiy uchlarni koordinatalarini takroran saqlash evaziga poliganal setka xotirada ko`p joyni egallaydi.
2. Ko`pburchaklarni uchlar ro`yxatidagi ko`rsatkichlari yordamida (orqali) berish (ifodalash).
Bu holda poliganal setkaning har bir chizig`i uchlar ro`yxatida bir marta saqlanadi:
V=((X1,Y1, Z1), (X2, Y2, Z2),..., (Xn,Yn, Zn))
Ko`pburchak uchlar ro`yxatidagi (indeks) ko`rsatkichlari orqali beriladi. Ko`pburchakning har bir uchi bir marta saqlanadi va bu xotira hajmini tejashga olib keladi. Ammo umumiy qirralar ikki martada chiziladi.Misol:
V = (V1, V2, V3, V4) = ((X1, Y1, Z1), . . .,(X4, Y4, Z4))
Ko`pburchak chizmasi
3. Qirralarni oshkora berishi.
Bu holda ko`pburchak qirralar ro`yxatidagi ko`rsatkichlari (indeksi) to`plami orqali beriladi. Qirralar ro`yxatida har bir qirra bir marta uchraydi va har bir qirra ro`yxatda uchlari (ikkita) va mos ko`pburchaklar (1 yoki 2 ta) orqali ifodalanadi. Ya’ni har bir ko`pburchak quyidagicha, R= (E1,……, En), va har bir qirra quyidagicha E= (V1, V2, R1, R2) Agar qirra bitta ko`pburchakka tegishli bo`lsa u holda R1 yoki R2 – bo`sh to`plam. Qirralarni oshkora berishda poniganal setka hamma qirralarni chizish orqali beriladi va umumiy qirralar qayta chizilmaydi. Misol:
Ko`pburchak chizmasi
V= (V1, V2, V3, V4,) = ((X1, Y1, Z1), . . .,(X4, Y4, Z4))
R1=(E1,E4,E5), R2=(E2,E3,E4)
E1=(V1, V2, R1, 0), E2=(V2, V3, R2, 0)
E3=(V3, V4, R2, 0), E4=(V4, V2, R1, R2)
E5=(V4,V1, R1, 0)
Do'stlaringiz bilan baham: |