104
7/2/2011 1 Modelimi dhe animimi 3D Avni Islamaj & Rrezarta Pllana Semestri veror 2011 Literatura Klawonn: Introduction to Computer Graphics Using Java 2D and 3D, 2009. Java(Eclipse), Sllajdet dhe Ushtrimet Computer Graphics në Google – web Computer Graphics në Google – Book

Document3d

Embed Size (px)

Citation preview

7/2/2011

1

Modelimi dhe animimi 3D

Avni Islamaj & Rrezarta PllanaSemestri veror 2011

Literatura• Klawonn:

– Introduction to Computer Graphics Using Java 2D and 3D, 2009.

• Java(Eclipse), Sllajdet dhe Ushtrimet

• Computer Graphics në Google – web

• Computer Graphics në Google – Book

7/2/2011

2

Motivimi• Nje foto thotë më shumë se 1000 fjalë.• Truri i njeriut mund të pranoj 400 000 000 000 Bit/s

– Vetëdija vetëm 2000 Bit/s

Shkalla e abstraksionit

Sas

ia e

info

rmat

es

Shtylla antike të cilat.....

1011001011100010010.....

Foto

Grafika

Texti

Numrat binar

Shpejtësia e leximit është: 10 fjalë me mesatarisht 5 shkronja = 10 fjalë * 5 shkronja * 8 bit =

400 Bit për sekondë.

Përpunimi i të dhënave grafike• Përpunimi i fotografisë: Ndryshim i fotografisë ashtu që informata

që përmbahet në të, të jetë lehte e dalluar dhe te behet analizimi i këtyre informatave përmes zbërthimit në objekte grafike të njohura. – Ndryshim i të dhënave të fotografisë (p.sh. Rrotullimi i fotos)– Përmirësimi i të dhënave të fotografisë (p.sh. Rritja e kontrastit)– Thjeshtëzimi i të dhënave të fotografisë (p.sh. Reduktimi i ngjyrave)– Dallimi (vërejtja) e mostrave: (p.sh. Kah kalon rruga, për cilën shkronjë

është fjala)• Grafika gjeneruese e kompjuterit

– Krijimi i fotove prej një përshkrimi:• Dhënia e një përshkrimi• Manipulimi i përshkrimit• Nxjerrja e fotografisë prej përshkrimit të dhënë

• Në këtë ligjeratë bëhet fjalë vetëm për grafiken gjenerative te kompjuterit!– Krijimi i fotografive përmes kompjuterëve

7/2/2011

3

Përdorimi i grafikës gjenerative

• GUI (ang. Graphical User Interface),• Kartografi (ang Cartography)• CAD (Shtëpi, Auto,…)• Vizualizim (Molekulat, Flukset (rrjedhat))• Simulim (Auto, Aeroplani,…)• Virtual Reality (Lojërat kompjuterike)

Prej skenës reale deri te fotografia (1)

1). Krijimi i objekteve të një skene përmes mundësive që ofron një vegël modeluese (fig. a)– Vetëm një përafrim i objekteve të skenës

2). Aproksimimi më i mirë i objekteve përmes llojeve të modelimit që kemi në dispozicion dhe përkushtimit shtesë – Paraqitja e enës përmes gjysëmsferës (fig. b)

7/2/2011

4

Prej skenës reale deri te fotografia (2)

3). Definimi i një zone 3D, e cila është e përceptueshme prej vështruesit, është i domosdoshëm (fig. c).Objektet e modeluara mbulojne një zonë më të madhe se sa zona që një vështrues mund të shoh.– Modelimi i disa komplekseve të ndërtesave nëpër të cilat levizë

vështruesi– Nëse vështruesi shikon në një drejtim të caktuar, atëherë shumica e

objekteve të modeluara nuk do të jenë në fushën të cilën ai e shikon, të cilat objekte mundë të mos mirren ne konsiderim gjatë paraqitjes së skenës.

– Përcaktimi i objekteve që shtrihen dhe atyre qe nuk shtrihen në fushën e shikimit të vështruesit njihet si Clipping 3D.

• Një objekt që shtrihet në fushën e përceptimit nuk është e domosdoshme që të jetë i dukshëm prej veshtruesit – ai mund të jetë i mbuluar prej objektit tjetër

Prej skenës reale deri te fotografia (3)

4). Projektimi i objekteve që gjenden në zonën e perceptimit të vështruesit, në një siperfaqe 2D, e cila siperfaqe mund të paraqitet në monitor ose të shtypet në fletë (fig. d).Gjatë projektimit duhet të mirren parasyshë:– Cilat objekte ose pjesë të objekteve jan të dukshme?– Ndriçimi dhe efektët e dritës

Procesi i krijimit të një fotoje 2D prej një skene 3D quhet edhe Rendering.

7/2/2011

5

Grafika e rasterit vs. grafika vektoriale (1)

• Pothuajse të gjitha pajisjet dalëse të grafikave (monitori, shtypësi) janë të orientuara në pixel.

• Modelimi i grafikave nuk është i orientuar në pixel. – Dallim i pa kapërcyeshëm.

• Një objekt që duhet të vizatohet, duhet së pari te përshkruhet ose të modelohet– Zakonisht përmes grafikës vektoriale

• Shtëpia nën (b) është një përshkrim përmes grafikës vektoriale të shtëpisë nën (a).

Grafika e rasterit vs. grafika vektoriale (2)

• Objekti që duhet të modelohet, përshkruhet si një kombinim i objekteve themelore (drejtëzave, drejtkëndshave, rrathëve, elipsave) të cilat definohen përmes një numri të vogël të koordinatave që përcaktojnë pozitën dhe disa parametrave si rrezja,etj.

• Shtëpia e dhënë nën (a) mund të përshkruhet edhe përmes koordinatave të pikave (c).– Në këtë rast duhet të dihet edhe se a duhen të lidhen në mes veti me

një drejtëz dy pika te njëpasnjëshme.• Modelimi vektorial i objekteve është i papërshtatshëm që në menyrë

direkte të mundësohet dalja e grafikës ne paisjen dalëse të orientuar në pixel (monitori i rrafshët, shtypësi).

7/2/2011

6

Grafika e rasterit vs. grafika vektoriale (3)

• Monitorët me gypa katodik teorikisht mundësojnë paraqitjen direkte te objekteve të modeluara përmes orientimit në vektor, mirëpo në këtë rast nevojitet përsëritja e grafikës 60 herë në sekond (60 Hz), sepse monitori nuk mund të ruaj informaten gjatë.

• Për grafika me shumë vektorë (shumë vija), përseritja prej 60 herë në sekondë e te gjitha vijave bëhet e pamundur, kështu që prap vije deri të humbja e informatës ne monitor.

• Zgjidhja: Grafika e orientuar në raster (ang. Raster graphics).– Ekzistimi i nje matrice të pixel-ave, ku seciles pixel i ipet një ngjyrë.

• Të grafikat bardh e zi, çdo pixel ngjyroset ose nuk ngjyroset fare.• Nëse nevojitet që një grafikë e orientuar në vektor të paraqitet si një

grafikë e orientuar ne raster, atëherë duhet të konvertohen të gjitha vijat – vektor ne vija me pixel (Një punë shumë e madhe).– Lajmërohen efekte të pa dëshirueshme (efekti Aliasing) – gjatë

mostrimit të një sinjali kontinual në një sinjal diskret.

Grafika e rasterit vs. grafika vektoriale (4)

• Edhe pse një fotografi në fund të fundit duhet patjetër të paraqitet në dalje si një grafikë e orientuar ne raster, prapë se prapë ka përparësi modelimi dhe ruajtja e sajë në formen e orientuar ne vektor.

• Një grafikë e orientuar ne raster është e lidhur ngushtë me një rezulucion të caktuar.

• Nxjerrja e një fotografie në dalje, në një pajisje me rezulucion të ndryshëm prej rezulucionit në të cilin është modeluar ajo fotografi, shpije deri te dobësi të theksuara.

7/2/2011

7

Grafika e rasterit vs. grafika vektoriale (5)

• Nëse njihet vetëm paraqitja e shigjetës, në foton në mes, atëherë është e pa mundur të rekonstruohet grafika djathtas pa informacione plotësuese.

• Një paraqitje tjetër e një pixel është ajo përmes rrethit gjegjësisht koordinatave të tijë (p.sh. koordinata (5, 3) ).

Objektet gjeometrike themelore

• Në grafiken 2D të kompjuterit dallojmë 3 lloje të tipeve të objekteve themelore:

• Pikat: Specifikohen (karakterizohen detalisht) përmes koordinatave x dhe y. Përdoren për të definuar objektet tjera themelore.– P.sh. Segmentet përmes përcaktimit te fillimit dhe fundit të tyre.

• Lakoret: Janë segmente të përcaktuara përmes dy pikave ose prej disa pjeseve te lakoreve si bashkim segmentesh.– Lakorja më e thjeshtë është një segment i drejt e cila karaktrizohet

permes pikave të fundme– Futja e njëpasnjëshme e më shumë segmenteve në një varg

segmentesh dhe mbyllja e tyre ashtu që segmenti i fundit i futur te përfundoj aty ku segmenti i pare ka filluar paraqet nje poligon.

• Siperfaqet: Kufizohen përmes lakoreve të mbyllura të cilat pastaj mund të kenë një ngjyrë ose nje strukturë (moster) të caktuar.

7/2/2011

8

Poligonet: Nderprerja e segmenteve dhe konveksiteti

• Konveksiteti: Për një poligon, sipërfaqe apo trup themi se është konveks, nëse për çfarëdo dy pika të poligonit, sipëerfaqes, respektivisht trupit, rruga e drejtë që lidhë këto dy pika kalon plotësisht brenda poligonit, siperfaqës respektivisht trupit

• Poligonët te të cilët së paku një segment i tij e ndërpren përmbi një segment tjeter i quajmë poligone me mbiprerje.

• Segmentet me mbiprerje nuk janë kurrë konvekse.

Lakoret

• Në shumicen e rasteve lakoret përshkruhen si polinome, të cilat si të segmentet, mund të bashkohen pjesë – pjesë.

• Lakoret përshkruhen përmes pikës fillestare, pikës së fundit dhe një apo më shumë pikave kontrolluese.– Një pikë kontrolluese për lakoret e rendit të dytë (kuadratike)– Dy pika kontrolluese për lakoret kubike

7/2/2011

9

Lakorja si një varg i lakoreve tjera

• Për dallim prej mënyrës së përfitimit të poligoneve përmes futjes së segmenteve në vargun e segmenteve, krijimi i lakoreve në këtë menyrë, përmes futjes së lakoreve në vargun e lakoreve mundëson krijimin e lakoreve të vazhdueshme, por nuk garanton lëmueshmërinë e lakoreve.

• Menjanimi i thyrjeve gjatë krijimit te një lakorje përmes bashkimit të njëpasnjëshëm të lakoreve tjera, arrihet përmes kolinearitetit të tangjentave– Tangjenta e pikës së fundit të lakorës paraprake duhet të jetë kolineare

(të përputhet) me tangjenten e pikës fillestare të lakores pasuese.

Lakoret e mbyllura: Rrethi dhe elipsa

• Përdorim të shpeshët në grafiken e kompjuterit• Rathët dhe elipsat, njejtë si poligonet, definojne siperfaqet.

– Siperfaqet kufizohen me lakore të mbyllura.– Siperfaqet kanë ngjyre ose strukturë

• Definimi i lakoreve (vetëm perimetrit – jo siperfaqës) përmes rrathëve dhe elipsave, në përgjithësi nuk dallon prej definimit të tyre si një varg i lakoreve (segmenteve).

• Drejtëkëndëshat janë rast special i poligoneve.– Të rëndësishme në grafiken e kompjuterit janë drejtëkëndëshat, brinjet

e të cileve janë paralel me boshtet e koordinatave• Definohen përmes dy pikave – kulmeve të diagonalës

7/2/2011

10

Operacionet e bazuara mbi teorin e bashkësive (Set theoretic operations)

• Është shumë vështire të definohen siperfaqet komplekse përmes lakoreve korniza (pa mbushje – siperfaqe).

• Një mundësi e mirë që prej siperfaqeve të konstruktuara të krijojme siperfaqe komplekse është përdorimi i operacioneve të teoris së bashkesive

• Operacionet më të rëndësishme të teorisë së bashkësive janë:– Unioni, prerja, diferenca dhe diferenca simetrike.

a). Unioni b). Prerja c). Diferenca d). Diferenca simetrike

Ju faleminderit për vemendjen!

7/2/2011

1

Modelimi dhe animimi 3D

Avni Islamaj & Rrezarta PllanaSemestri veror 2011

Transformimet gjeometrike

• Përdoren për:– Pozicionimin e objekteve – zhvendosja ose rrotullimi i tyre– Modifikimin (formsimin) e objekteve – shtrirja (ang. stretch) ose tkurrja (

ang. sprain) e objektit ne një drejtim.– Realizimit të levizjeve ose ndryshimeve të objekteve në animimin e

grafikave.• Nga matematika dijm se produkti skalar i dy vektoreve, fundet e te

cileve perfundojn ne pikat dhe te hapsires eshte si vijon:

• Paraqitjen e produktit skalar te dy vektorve permes matricave do ta pervetsojm ne te ardhmen per te gjetur koordinatat e pikes pas nje transformimi elementar.

7/2/2011

2

Translacioni

Translacioni

• është rasti më i thjesht i transformimeve elementare gjeometrike. • Te translacioni behet fjale per zhvendosjen e nje pike per nje

distance D e cila prezentohet permes nje vektori ne piken .

• Translacioni eshte transformimi i vetem jolinear i cili nuk mund te paraqitet permes produktit te matricave.

• Paraqitja e translacionit ne forme te produktit te matricave, do teqonte deri te anomalia e tarnslacionit, ne rastin e zhvendosjes seorigjines se sistemit te koordinatave.

• Vektori zero i origjines do te pasqyrohej gjithmon ne vetvete, cka nuk eshte veti e translacionit pasi ai zhvendose edhe origjinen e sitemit te kordinatave per distancen

7/2/2011

3

Skalimi

Skalimi

• Karakterizohet me dilatacionin (shtrirjen) dhe komprimimin (tkurrjen) të një objekti ne drejtim te boshteve x dhe y.

• Matematikisht skalimi i nje pike rezulton ne nje pike tjeter e cila perfitohet si produkt i dy matricave.

• Nese ateher faktori skalues ne drejtim te boshtit x ndikon qe figura te zgjerohet.

• Nese ateher do te kemi nje komprimim (tkurrje) te figures ne derejtim te boshtit x.

• Nese ka vlere negative ateher perveq nje zgjerimi apo komprimimi te figures ne drejtim te boshtit x, kemi edhe nje zhvendosje simetrike ndaj boshtit y te figures.

1xs

1xs

xs

7/2/2011

4

Rrotullimi (1) - është nje transformim tjeter gjeometrik i cili piken e

rrotullon rreth origjines se sistemit te koordinatavene drejtim te kundert te akrepave te ores per kendin θ ne piken .– Nes kendi θ eshte negativ ateher rrotullimi behet ne drejtim te akrepave te ores.

• Varsisht prej asaj se a rrotullohet pika apo sistemi i kordinatave dallojme:– rrotullimin aktiv, kur pika rrotullohet dhe – rrotullimin pasiv kur pika nuk levize por rrotullohet sistemi i kordinatave.

• Ne do te shqyrtojme vetem rastin e rrotullimit te pikes.• Nese qendra e objektit qe rrotullohet nuk shtrihet ne origjinen e

sistemit te koordinatave, atehere objekti qe rrotullohet do te pesojeedhe nje zhvendosje.

Rrotullimi (2)

7/2/2011

5

Rrotullimi (3) • Nga lidhja ne mes te sistemit te kordinatave cilindrike dhe sistemit

kartezian te kordinatave te paraqitur ne fig, mund të përfundojmë:

• Duke aplikuar formulat e njohura trigonemetrike per dhe perfitojm:

• Me zevendesimin e formulave për x dhe y në formulat e mësiperme do te fitojm:

Krasitja (ang. Shear) (1)

• Realizohet njejt sikur se skalimi, permes nje matrice katrore, ku parametrat e krasitjes jane ne diagonalen dytesore te matrices e jo ne diagonalen kryesore sikuse te skalimi.

• Sikurse te skalimi dhe rrotullimi, edhe krasitja varet prej origjines se sistemit te koordinatave.

• Objektet, qendra e te cilve nuk perputhet me origjinen e sistemit te koordinatave, perveq qe transformohen ato i nenshtrohen edhe nje zhvendosje.

• Krasitja e pasqyron piken ne piken dhe shenohet me barazin e me poshtme.

• Nese atehere kemi nje krasitje ne drejtim te boshtit Y dhe ansjelltas nese krasitja eshte ne drejtim te boshtit X.

7/2/2011

6

Krasitja (ang. Shear) (2)

Koordinatat homogjene (1)

• Në grafiken e kompjuterve, transformimet komplexe relizohen si një kyqje e njëpasnjeshme e transformimeve elementare.– Kjo do të thotë multiplikim i matricave perkatese (me perjashtim të translacionit)

• Transformimet komplexe qe permbajne edhe translacionin nuk mund të realizohen përmes multiplikimit të matricave– Translacioni është pasqyrim jo linear por affin– Transformimet afine përbëhen prej nië ose më shumë transformimeve

elementare

• Ideja: Realizimi i të gjitha transformimeve elementare si multiplikm matricash.– Zgjidhja: Koordinatat homogjene

7/2/2011

7

Koordinatat homogjene (2)

• Transformimet elementare pasqyrojnë të gjitha pikat ne nje bashkësi tjeter pikash – Translacioni duhet të zhvendose edhe origjinen e koordinatave

• Koordinatat homogjene përdorin edhe një dimension shtesë për të paraqitur pikat.

•• Komponentja z e pikës në koordinata homogjene nuk guxon

asnjëherë të jete zero.• Nëse deshirojmë që pika (xₒ, yₒ) të reprezentohet në koordinata

homogjene atëherë:– kjo duhet të bëhet në këtë formë: (xₒ, yₒ, 1), ose – në rastin e përgjithshem

Transformimet në koordinata homogjene

• Në këtë formë është i mundur ekzekutimi i njëpasnjëshem i transformimeve si shumzim i matricave

• Të gjitha matricat e transformimeve kanë këtë formë:

7/2/2011

8

Transformimet e njëpasnjëshme

Transformimet e njëpasnjëshme

7/2/2011

9

Animimi dhe levizja përmes transformimeve

• Deri tani vetem transformime statike– Pozicionim dhe formesim të objekteve

• Transformimet gjeometrike janë të përshtatëshme edhe për levizje dhe animim– Tregusi i sekondave të orës në formë të një rotacioni hap – pas – hapi

prej 6° për një sekondë.

Animimi dhe levizja përmes transformimeve

• Problemet gjatë animimit:– Levizjet kontinuale duhet të zberthehen në shumë levizje të shkurtëra,

ku secila duhet të pershkruhet përmes transformimit përkatës– Për të eliminuar paraqitjen e vrullëshme të levizjes kontinuale, duhet

• levizjet e shkurtëra (nënlëvizjet) të jene mjaftë të vogla dhe • distanca në mes të dy fotove të njëpasnjeshme të jetë mjaft e shkurtër.

– Modelimi i i levizjes së një objekti përmes transformimeve përfshine ne vehte:

• Vizatimin e objektit• Llogaritjen e objektit të transformuar• Shlyerjen e objektit te vjeter dhe• Vizatimin e objektit të ri

7/2/2011

10

Animimi dhe levizja përmes transformimeve

• Shlyerja e objektit të vjetër është problematikë në grafiken e rasterit.– Shlyerja në këtë rast do të thotë mbishkrim– Me çka duhet të mbishkruhen pixel -të e objektit të vjetër?

• Përmes një prapaskene (Backgroudn) të qartë.

• Objekti i vjeter duhet prapë plotësisht të renderohet për të konstatuar se cila pixel janë të zëna prej tij– Për këtë arsy duhet të refreshohet i tëre buferi i fotos. Sëpari shkruhet në një

pufer virtual dhe pastej ne buferin e vertet te fotoe => Teknika e buferimit të dyfisht (ang. Double-Buffering)

Shembull: Ora me tregues të sekondave

• Një orë vetëm më tregues të sekondave e cila levizë prej këndit të poshtem majtas deri të këndi i siperm djathtas i një dritarje.

• Rami katror i orës duhet të levizë hap – pas – hapi përmes një translacioni.

• Translacioni duhet të ndikoj edhe të treguesi i sekondave të orës, i cili edhe rrotullohet.

• Le të marrim se zhvendosja e orëspër një hap përfshinë zhvendosjenpër 2 njësi djathtas dhe 1 njësi lartëtë ramit të orësT Ora, Hapi= T(2, 1) dhe

• Rrotullimi i akrepit të ores për 6°TAkrepi, Hapi = R(-π/180)

7/2/2011

11

Shembull: Ora me tregues të sekondave

• Problem: Rrotullimi i akrepit të sekondave. – Ndaj cilës pikë duhet të rrotullohet treguesi i sekondave?

• Duhet të vendoset qëndra e orës në origjinën e boshtit të koordianatave.– Çka pas zhvendosjes së parë të orës? Treguesi duhet të rrotullohet rreth një pike

tjetër.

• Zgjidhja: Ka dy strategji. (Strategjia 1).– Mbahen shenime mbi poziten e objektit – ku gjindet objekti i shqyrtuar (akrepi i

sekondave) dhe zhvendoset edhe qendra e rrotullimit. – Dobësitë: Transformime tjera (p.sh. skalimi për të zgjatur akrepin) shumë i

vështirë. Duhet të mbahen shenime (ruhet) edhe orientimi i objektit.

Shembull i strategjisë 1: Ora me tregues të sekondave

• Zgjidhja e dytë: Më e thjeshtë për tu realizuar– Gjithmonë shkohet prej pozites fillestare të objektit– Akumulohen transformimet gjeometrike të ndermarra mbi objekt dhe zbatohen mbi

objektin fillestarë, para se objekti i ri të vizatohet

• translacionin që zhvendosë orën prej pozites fillestare deri të pozita aktuale Zbatohet mbi origjinen e sistemit të koordinatave në të cilen është vendosur ora.

• rrotullimi i akrepit rrethë origjines deri në momentin aktual.

• zhvendosë akrepin në qender te orës tani më të zhvendosur

Sëpari duhet tëkryhet rotacioni i

akrepit dhe pastajzhvendosja

7/2/2011

12

Interpolimi

• Deri me tani: – Modelimi i levizjeve përmes transformimeve– Levizja si një varg i levizjeve te vogla

• Qëllimi i interpolimit: Shndërrimi kontinual i një objekti prej gjendjës fillestare në gjëndjen përfundimtare.

• Shembull i orës: Jo ekzekutimin e transformimit T Ora, Hapi= T(2, 1)mbi oren fillestare (p.sh. 100 herë) prej nje foto të ores të fotoja tjetër, por kalim prej pozitës fillestare p₀=(0, 0) në poziten përfundimtare p₁=(200,100) përmes pikave si kombinim konvex i të dy pikave.

• Principi i kombinimit konvex mund tw aplikohet jo vetwm nw pika dhe vektor, por edhe mbi matrica (transformime).

Interpolimi i transformimeve

• Kombinimi konvex i dy transformimeve afine (tw njwpasnjwshme) tw dhwna pwrmes matricave M₀ dhe M₁ wshtw:

• Zbatimi: Shndwrrimi i dy objekteve nw njeri tjetrin pwrmes transformimeve M₀ dhe M₁ te nxjerrura prej tw njejtit objekt themelorw.

7/2/2011

13

Interpolimi i thjeshtw i objekteve

• Dy objekte S dhe S' pwrcaktohen pwrmes n pikave respektivisht dhe linjave lidhwse (segmenteve ose lakoreve kuadratike apo kubike) qw pwrdorin kwto pika.

• Nw kwtw rast, nw tw dy objektet paraqiten linjat lidhwse korosponduese. Pra nwse objekti S p.sh. pwrdorw lakoren kuadratike qe kalonw nwper pikat , atwherw edhe objekti S' pwrmban lakoren kuadratike qw kalonw nwper pikat

• Pwr hapat ndermjet pikave dhe pwrdoren kombinimet konvekse:

pwr dhe vizatimin e lakoreve lidhwse ndemjet pikave

Interpolimi i thjeshtw i objekteve

• Shembull: Objektet S dhe S' janw shkronjat D dhe C tw definuara pwrmes pikave:

• Dhe dy lakoreve kuadratike qe pwrdorin pikat 1, 2 dhe 3 gjegjwsisht pikat 1, 4 dhe 5.

7/2/2011

14

Interpolimi i thjeshtw i objekteve

Gabimet e rrumbullaksimit tw numrave

• Treguesi i sekondave me gjatwsi prej 100 pixel, rrotullohet rreth origjinws nw menyrw iterative me hapa (kwndw) prej 6°.

• Aplikimi i matematikes sw numrave tw plote me numra integer nw vizatimin e treguesit tw sekondave qon tw koordinatat (95, -2) pas njw minuti.

• Nevoja pwr saktwsi mw tw madhe.• Numrat me presje dhjetore: float dhe double

7/2/2011

15

Shembuj tw gabimit tw rrumbullakimit

Ju faleminderit për vemendjen!

7/2/2011

1

Modelimi dhe animimi 3DVizatimi i lakoreve

Avni Islamaj & Rrezarta PllanaSemestri veror 2011

Vizatimi i drejtëzës (1)

• Qëllimi: Vizatimi i një segmenti prej pikës (x₀, y₀) deri të pika(x₁, y₁) mbi raster. Më këtë rast do të marrim se:– Të dy pikat shtrihen mbi grafiken e rasterit (janë të dhëna si numra të

plotë) dhe– Piak e parë gjindet majtas nga pika e dytë: x₀ ≤ x₁

• Një qasje naive: Të fillohet vizatimi pixel për pixel prej pikës x₀ deri të x₁ duke llogaritur vleren e y për çdo vlerë të x. – Vlera e y në përgjithsi nuk është numer i plotë (gjatë llogaritjes), pra

vlera e y duhet të rrumbullaksohet.– Ngjyroset pixel me vlere te rrumbullakuar të y.

2Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

2

Drejtëza (2)

• Ky algoritem rezulton me një gabim nëse x₀ = x₁.• Edhe nëse këte rast (rastin x₀ = x₁) e trajtojm në menyrë të

veçantë, prapë se prapë, algoritmi mbetet i papershtatshempër të vizatuar rrethin.

Formula 1: Ka vetëmnjë operacion të

mbledhjes.

Formula 2: Ka njëmbledhje, një zbritje

dhe një shumzim.

3Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Vizatimi i drejtëzës (3)• Problem: Vizatimi i drejtëzave me

rënjë të vrullshme.– Nuk ngjyrosen të gjitha pixelt nëper

të cilat kalon drejtëza. Vlerat e x ndryshojne pixel për pixel, mirpovlerat e y pas llogaritjës kanëdiskontinuitet.

• Zgjidhja: Ndërrimi i vendëve të x dhe y për drejtëzat kuazi-vertikale. (inkrementimi (rritja) i koordinatësy).

• Problem: Çdo objekt themelor përbëhet prej drejtëzave. Domosdoja e nje algoritmi akoma më eficient se algoritmi qëimplementon formulen 1.

4Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

3

Eficienca e vizatimit të drejtëzës

• Algoritmi naiv i drejtëzës përdor operacione mbi numrat mepresje dhjetore (ang. floating point) – pra një aritmetikë tëbazuar në numra floating point.

• Rritja e eficiences përmes menjanimit të aritmetikës menumra floating point.

• Algoritmi i Bresenham-it ose algoritmi i pikës së mesme përvizatimin e drejtëzës.

5Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmi i Bresenham-it për vizatimine drejtëzës (1).

• Ne do të shqyrtojmë së pari vëtemdrejtëzat me një koeficient të rritjesk=[0, 1].

• Nëse në një drejtëz të tillë njyrosetnjë pixel, atëher pixel e ardhëshmemund të jëtë:– Pixel fqinjë e djathtë (E) ose– Pixel fqinjë e siperm, diagonal me

pixeln më parë të ngjyrosur (NE).

k = 1

k=[0, 1].

6Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

4

Algoritmi i Bresenham-it për vizatimine drejtëzës (2).

• Cila prej pixel-ave që janëkadidate për tu ngjyrosur, do tëngjyroset, varet prej pikës sëmesme (M) të atyre dy pixel-ave.

• Nese pika e mesme gjendet nëndrejtëz, atëherë ngjyroset pixel(NE)

• Nese pika e mesme gjendet mbidrejtëz, atëherë ngjyroset pixel(E)

7Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmi i Bresenham-it për vizatimine drejtëzës (3).

• Ekuacioni i drejtëzes: y = k*x+b. Çdo funksion y = f(x) mund tëshkruhet në formen implicite F(x, y) = 0. Në këtë menyrë, përdrejtëzen do të kemi: F(x, y) = k*x – y + b = 0

F(x, y) = 0 ↔ Pika (x, y) shtrihet në drejtëzF(x, y) < 0 ↔ Pika (x, y) shtrihet mbi drejtëzF(x, y) > 0 ↔ Pika (x, y) shtrihet nën drejtëz

8Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

5

Algoritmi i Bresenham-it për vizatimine drejtëzës (4).

• Në menyrë analoge, nëse zëvendësojm për (x, y) koordinatat perkatëse të (xM, yM) atëherë vlenë: F(xM, yM) < 0 ↔ Pixel (E) duhet të ngjyrosetF(xM, yM) > 0 ↔ Pixel (NE) duhet të ngjyrosetF(xM, yM) = 0, atëher duhet të përvetsohet gjithmone i njejti përafrim (p.sh. Gjithmon pixel (E))

9Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmi i Bresenham-it për vizatimine drejtëzës (4).

• Qëllimi: Prej ekuacionit të drejtëzes të nxirret madhesia –numer i plotë, për të përcaktuar pixeln që duhet të ngjyroset.

• Dhe në formen implicite:

),( )0(MM yxE

21),( )0( MMMM yykuyxM

2/1),(),( )0(MMMM yysepseplotëinumerështënukyxF

10Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

6

Algoritmi i Bresenham-it për vizatimine drejtëzës (5).

• Si mund ta bëjmë ?– Duke shumzuar me 2:

• Për pikën do tëkemi:

Pra, kemi shndërruar në një shprehje me operacione në mestë numrave të plotë.

2/1),(),( )0(MMMM yysepseplotëinumerështënukyxF

),( MM yxF

),(21),( )0()0(

MMMMMM yxqëpasidheyykuyxM

11Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmi i Bresenham-it për vizatimine drejtëzës (6).

Rasti E:Pika që duhette ngyroset paspikës fillestareështë pika E.

Rasti NE:Pika që duhette ngyroset paspikës filestareështë pika NE.

)2/1,1(),( 11 ppppold yxyxM )2/1,1(),( 11 ppppold yxyxM)2/3,2(),( 22 ppppnew yxyxM)2/1,2(),( 22 ppppnew yxyxM

)2/1,1( ppoldold yxFd)2/1,2( ppnewnew yxFd

)2/1,1( ppoldold yxFd)2/3,2( ppnewnew yxFd

cydxxdyd ppold )2/1()1(cydxxdyd ppnew )2/1()2(

cydxxdyd ppold )2/1()1(cydxxdyd ppnew )2/3()2(

dydd oldnewE dxdydd oldnewNE

12Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

7

Algoritmi i Bresenham-it për vizatimine drejtëzës (7).

• Vlerat e Δ janë numra të plotë, pasi që dx dhe dy fitohen si diferencë e koordinatave korosponduese te pikave (x₀, y₀) dhe (x₁, y₁).

dxdydd oldnewNE dydd oldnewE

00

old

oldshtrespektivi

dpërdxdydpërdy

NEpikangjyrosetdxdyEpikangjyrosetdy

13Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmi i Bresenham-it për vizatimine drejtëzës (8).

• Inicializimi i d me pike startuese (x₀, y₀): Pika e parë e mesmeqë shqyrtohet është pika (x₀+1, y₀+1/2)

Problem: d inicializuese nuk

është numer i plotë!

14Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

8

Algoritmi i Bresenham-it për vizatimine drejtëzës (9).

• Zgjidhja e problemit të fundit: Shqyrtojm variablen “vendosëse“ D në vend të variables d.

• D = 2d:• Atëherë edhe:

• Ku

15Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Shembull: Algoritmi i Bresenham-it (1).

• Vizatimi i drejtëzes prej pikës P₀ (x₀, y₀) = (2, 3) deri në piken P₁(x₁, y₁) = (10, 6).

• dx = 10 – 2 = 8• dy = 6 – 3 = 3•• 10)(2

62

dxdydy

NE

E

P₀ (x₀, y₀) = (2, 3)

P₁(x₁, y₁) = (10, 6)

16Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

9

Shembull: Algoritmi i Bresenham-it (2).

10)(262

dxdydy

NE

E

EPikadxdyDinit 022

17Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Shembull: Algoritmi i Bresenham-it (3).

10)(262

dxdydy

NE

E

)(4621 NEDD Einitinit )(610412 EDD NEinitinit

18Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

10

Shembull: Algoritmi i Bresenham-it (4).

10)(262

dxdydy

NE

E

?)(06623 EDD Einitinit )(66034 NEDD Einitinit

19Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Shembull: Algoritmi i Bresenham-it (6).

10)(262

dxdydy

NE

E

)(410645 EDD NEinitinit )(26456 NEDD Einitinit

20Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

11

Shembull: Algoritmi i Bresenham-it (6).

10)(262

dxdydy

NE

E

)(810267 ENDD Einitinit

21Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Përgjithsimi i algoritmit të Bresenham-it.

• Drejtëzat qe kanë rritje më të vrullshme se 1:– Zëvendësimi i roleve të boshteve X dhe Y gjatë ekzekutimit të

algoritmit.

• Drejtëzat me koeficient [-1, 0] negativ të rritjes:– Kryerja e të njejtes procedur si në rastin [0,1], mirpo tani në vend të

pixels NE duhet te ngjyroset pixel e “juglindjes“ SE (ang. Southeast).

• Drejtëzat me pika të skajshme, koordinatat e të cilave nukjanë numra të plotë:– Rrumbullaksimi i koordinatave të pikave fillestare dhe të fundme dhe

pastaj ekzekutimi i algoritmit.

22Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

12

Algoritmet e strukturuara (1)

• Gjatë vizatimit të drejtëzave paraqiten mostra rritëse të njejta.– Le te shenojmë me H rritjen horizontale dhe me D rritjen diagonale të

drejtëzes, atëherë më këtë simbolik mund të shenojmë mostrat e paraqitura si p.sh.:

23Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmet e strukturuara (2)

• Algoritmet e strukturuara llogarisin mostrat për të vizatuardrejtëzat.

• Komplexiteti i algoritmit të Bresenham-it është O(n), ndërsa ai i strukturuar O(log n).

• Pricipi themelor:– Janë dhënë: P₀ (x₀, y₀) , P₁(x₁, y₁) dhe– Llogaritet dx=x₁ – x₀ dhe dy=y₁ – y₀ – Pa pixel-n fillestare duhet të ngjyrosen dx pixel. Prej dyre dy pixel

diagonale dhe dx – dy pixel horizontale.– Merre si aproksimim të parë sekuencen– Permutoje sekuencen e parë deri sa të fitohet sekuenca korrekte.

]1,0[k

dydydx DH

24Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

13

Dendësia e pixel-ve (1)

• Deri me tani kemi marrë se drejtëza ka trashësin prej një pixel.• Drejtëzat e holla, të të cilat një pixel për çdo hap në drejtim të

boshtit x respektivisht y ngjyroset, kanë dëndësi të ndryshmetë pixel-ve për koeficient të ndryshem të pjerrtësisë.– Drejtëza horizontale ka dëndësi më të madhe se çdo drejtëz më e

pjerrtë se ajo.– Drejtëza me koeficent k=1 ka dendesin më të vogël – është drejtëza

më e hollë.

25Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

m = n

Dendësia e pixel-ve (2)

• Shembull: Drejtëza mepika P₀(0, 0) dhe P₁(n, m) ku m ≤ n (k=[0, 1]) dheme n pixel pavarësishtprej k.

drejtëzeseGjatësiapixelveiNumriDendësia

1611

4)4/,(

22

nnnnnl

≈0,7 =70%

Drejtëzahorizontale

26Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

14

Stilet e drejtëzave (1)

• Me stile të drejtëzave (ang. line styles) nënkuptojme mënyren se si një drejtëz vizatohet: drejtëzat e ndërprera, drejtëzat me pika. – Deri me tani drejtëzat me stil standart

• Mënyra më e thjeshtë për të definuar stile të ndryshme tëdrejtëzave është përdorimi i një maske të bit-ve (ang. Bitmask).

• Një maskë e bit-ve është një sekuenc e njëshave dhe zerove.• Gjatë vizatimit të drejtëzes maska e bit-ve rrjedhë në menyrë

sinkrone me vizatimin e pixelve:– Për vleren 1 të maskës ngjyroset një pixel.

27Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Stilet e drejtëzave (2)

28Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

15

Stilet e drejtëzave (3)

• Për të njëjten maskë të bit-ve (p.sh. 111000) kemi gjatësi tëndryshme të pjesëve të drejtëzave respektivisht nderprejevetë tyre për drejtëza më koeficent k të ndryeshem.– Pjesët e drejtëzes (nderprerjet etyre) jane 40% më të gjata në

drejtëzën me k=1 se sa në drejtëzen horizontale me k=0;

2

2

1 1

1021

lklk

29Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Clipping (1)

• Me clipping kuptohet prerja ose lënja jashte e objekteve tëcilat pjesrisht nuk i takojnë zonës së vizatimit (zonës sëclippimit) ose krejtësisht janë jashte asaj zone.

• Dallojm 4 raste të rëndësishme që paraqiten gjatë clippimit tëdrejtëzave(shiko foton). Duhet të

llogaritetpikëprerja e drejtëzes me

zonen e clippimit

30Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

16

Cohen-Sutherland-Clipping

• Qëllimi: Menjanimi sa më shumëqë është e mundur i pikëprerjevetë drejtëzave me dritaren e clipimit.

• Ndarje e botës 2D në 9 nënzona, të cilat përshkruhen përmes 4 bitëve.

• Pikës P(xp, yp) i korospndon kodibinar:

31Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Cohen-Sutherland-Clipping

32Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

17

Cohen-Sutherland-Clipping

Q

P

S

xPxS ..

yPyS ..

dhexPxQyPyQk

..

..

xPxSyPySk

..

..

min. xxS

yPxPxkyS .).(. min

• Zëvendësoje piken P me pikën S dhe filloje algoritmin prej fillimit.

33Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Cohen-Sutherland-Clipping

Dritarja e clippimit përfat të mirë

ështëkaterkëndëshedhe lehteson

gjetjen e pikave

prerëse.

34Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

18

Algoritmi i Bresenham-it për rreth (1)

• Mirëpo algoritmi përdorë akoma rrënjën katrore e cila po ashtu kushton.– A mundemi të vizatojmë një rreth vetëm më +, - dhe *?

Pika në mesin e brinjës së poshtme te pixels duhet të jetë benda rrethit që deshirojmë të vizatojmë- nëse po: x=x+1

- nëse jo: x=x+1, y=y-1

35Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Algoritmi i Bresenham-it për rreth (2)

• Qendra e pixels së parë ka këto koordinata (x, y) = (0, R)• Pozita e pikës së sajë është: (0, R-1/2)=(0, R-0,5) për katrorin (1x1).• Testo se a janë koordinatat (x, y) brenda rrethit duke zëvendësuar y=R-1/2

për rastin fillestar– F(x, y) = x²+y² - R²<0 – F(x, y) = 0 + (R-1/2)² –

R² < 0 → -R + 0,25 < 0?

• Gjithashtu vlejnë edhe barazitë:F(x+1,y) = F(x,y)+2x+1F(x+1,y-1) = F(x,y)+2x-2y+2

36Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

19

Algoritmi i Bresenham-it për rreth (3)

37Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Vizatimi i lakoreve të çfardoshme (1)

• Algoritmi i Bresenham-it nuk mund të përdoret për lakoret mërritje të çfardoshmë, pasi që është kusht se koeficienti i rritjessë lakorës në intervalin e vizatimit të jetë [0, 1].

• Gjithashtu, edhe vizatimi i lakoreve me rritje të vrullshme nukështë i mundur përmes llogaritjes se koordinates y prejfunksionit të dhën y = f(x) – mungon kontinuiteti i vlerave.

• Mënyra e vizatimit të lakoreve të çfardoshme:– Funksionin e dhënë e mostron pixel – për – pixel në drejtim të boshtit

X duke llogaritur vlerat e y– Vizatohen jo vetëm pixelt me vlerë të rrubullakuar të y, por edhe pixelt

të cilat vizatohen përmes algoritmit të Bresenham-it për dy pixel fqinjëtë boshtit X.

38Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

20

Vizatimi i lakoreve të çfardoshme (2)

Algoritmi i Bresenham-itnë mes të dy pikave fqinje

(x , y1) dhe (x+1, y2)

39Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Efekti Antialiasing

• Efekti Aliasin paraqitet gjate mostrimit të sinjaleve kontinualene sinjale diskrete.

• Gjatë vizatimit të një vije (mostrimi i një lakorje kontinuale menjë rrjetë diskrete të pixelve) vije deri të efekti Aliasing (shkallët).

• Efekti Antialising tenton të menjanoj këto efekte dukepërdorur vlera te ngjyres së hirit ose intensitete të ndryshmete ngjyrave (për vijat me ngjyra).

• Pixelt nuk ngjyrosen bardh e zi, mirpo me intensitet tëndryshem, varsishtë prej asja se sa janë të larguara prej linjessë vizatuar.

40Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

21

Mostrimi i siperfaqeve pa peshë (ang. Unëeighted Area Sampling)

• Një drejtëz interpretohet si një katërkëndësh kënddrejt i gjatë dhe i hollë.

• Çdo pixel i korospondon një katror. Intensiteti i pixels ështëproporcional me siperfaqen e prerjës së katrorit medrejtkëndëshin e drejtëzes.

41Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

Faleminderit për vemendjen!

42Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj

7/2/2011

1

Modelimi dhe animimi 3DSiperfaqet (hapsirat), teksti dhe ngjyrat.

Rrezarta Pllana, Avni IslamajSemestri veror 2011

Siperfaqet (zonat)

• Siperfaqet ose hapesirat 2D janw tw kufizuara nga:– poligonet ose sekuencat e lakoreve te mbyllura

• Te plotesimi (ngyrosja) i siperfaqeve paraqitet problemi i dallimit twpjeseve te brendhsme dhe atyre te jashtme te poligonit.

• Plotesimi i hapesirave eshte i thjeshte nw rast se vet hapesira ka formen e thjeshte gjeometrike. Por, kjo behet me problematike nesehapesira perbehet nga nje numer i caktuar i poligoneve qe pritennjeri me tjetrin.

• Per te thjeshtuar problemin, respektivisht per te ditur se njw pikw, itakon apo jo njw konture tw mbyllur shfrytezohet Ligji i paritetit tek.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 2

7/2/2011

2

Siperfaqet (zonat):Shembuj

Poligoni thjeshte dhe ai me kompleks

Plotesimi I hapesirave nepermes ligjit tek te paritetitInt- interneExt- externe

Pika interne int

Pika externe ext

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 3

Ligji i partitetit:Pika nw poligon

• Prej pikws, pwr tw cilen duhet tw percakojmw se wshtw apo jo nw poligon, lwshojmw njw shigjetw dhe numrojm nderprerjet.– Pwr cn = tek, pika gjendet nw poligon dhe anasjelltas.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 4

7/2/2011

3

Plotwsimi i siperfaqeve

• Ekzistojne dy mwnyra tw plotwsimit tw siperfaqeve:– Teknika gjenerale (universale) e grafikes kompjuterike per

plotesimin e ketyre siperfaqeve apo hapsirave • Nuk kerkon para njohuri per formen gjeometrike te poligonit – vlene pwr

çfardo siperfaqe tw rrethuar me njw ram (muri) tw ngjyrosur.

– Teknika e skanimit pwrmes linjes: Scan – Line • Bazohet ne njohurit mbi gjeometrin e siperfaqes qw duhet tw plotwsohet dhe

shpesh wshtw mw e shpejtw.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 5

Teknika gjenerale (universale).

• Nisemi prej njw pixel qw wshtw pwr tu ngjyrosur dhe shqyrojme pixelt tjera fqinje pwr ti ngjyrosur. Dallojm dy raste:– Rasti i hapave 4 rrugwsh dhe 8 rrugwsh– Mw shqip: rasti i fqinjwsisw katwrshe dhe fqinjwsisw tetwshe.

• Nisemi prej njw pike, pwr tw cilen e dijme se ndodhet nw zonen qw deshirojme ta ngjyrosim dhe ngjyrosim tw gjithw fqinjwt deri sa tw mos hasim ne nje ram tw ngjyrosur.

V, L, J, PV, VL, L, JL, J, JP, P, VP

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 6

7/2/2011

4

Problemet tw teknika gjenerale (universale).

• Varwsisht prej linjes pwrmbyellse tw siperfaqes tekniken 4 ose 8 drejtimwshw.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 7

Teknika e vijws skanuese

• Bazohet nw njohuritw mmbi gjeometrin e poligonit– Pwrkufizimi gjeometrik wshtw shumw i komplikuar mirpo– Plotwsimi i siperfaqes shumw mw i shpejt.

• Levize linjen skanuese horizontale prej lartw – poshtw ose paralele me ndonje nga boshtet koordinative dhe ngjyrosi pjeswt e drejtwzes perkatwse (brenda poligonit).

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 8

7/2/2011

5

Teknika e vijws skanuese: Algoritmi

1. Radhiti brinjwt sipas vlerws ma tw madhe tw y (koordinatws y)

– Brinjwve me vlerw maximale tw njejtw tw y, ju krahasohet vlera y e skajit tjetwr.

2. Levize linjen skanuese prej lartw – poshte 3. Pwr çdo pozitw tw linjws skanuese:

Tw gjenden brinjwt aktive Tw gjenden pikwprerjet e brinjwve me linjen skanuese, Tw shneohen pikwprerjet me x nga 1 deri ne n sipas radhws

(tw radhitura). Tw ngjyrosen pikselt ndermjet pikwprerjeve sipas principit tw

paritetit (njw segment po, tjetri jo, po,…)

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 9

Teknika e vijws skanuese: Shembull

• Rradhitja e brinjeve pwr kah vlera maximale e y i korospondon rradhws alfabetike tw brinjeve.

• Brinjet aktive janw brinjet tw cilat kanw tw njejten vlerw tw ysikurse vlera y e linjws skanuese.

• Pikwprerjet caktohen sipas radhws sw brinjwve: – Pikwprerja e parw e linjws skanuese

ne figure qw caktohet wshtw ajo me brinjen E.

– Domosdoja e radhitjeve sipas x te pikwprejeve tw gjetuara.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 10

7/2/2011

6

Rastet problematike

• Pwr te qenw i vlefshwm ligji i paritetit tw ngjyrosjes sw pjeswve te linjws skanuese (njw po – njw jo) duhet:– Pikwprerja e jinjes

skanuese me dy brinjw (nw pikprerjen e dy brinjeve) tw futet nw listen e pikwprerjeve dy here nwse tw dy brinjet gjenden nwn ose mbi linjen skanuese, dhe njwherw, nwse njwra brinjw ndodhet mbi linjen skanuese e tjetra nwn.

Duhe twshqyrtohet

2 here

Duhe twshqyrtohet

2 hereDuhe tw

shqyrtohet1 here

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 11

Llogaritja e pikwprerjeve

kxx

kemitëdoitzëvendësimpasdheyykemiatëherëpikselnjëpër

poshtëlartëprejlëvizskanueselinjaqëpasikyyxx

kyyxx

xxyyk

ii

ii

iiii

iiii

ii

ii

1:1)(

:,

)(

)()()(

1

1

11

11

1

1

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 12

7/2/2011

7

Textura: Plotwsimi me strukturw

• Nganjwher shtrohet nevoja qw siperfaqet tw mos ngjyrosen me njw ngjyre por krejt ose pjesrisht me njw strukturw.

• Texturw mund tw jetw njw foto e çfardoshme – zakonisht janw foto tw mostrave.

• Probleme:Siperfaqja qw duhet tw mbushet “strukturohet“ nuk wshtw gjithmon katwrkwndwshw kwnddrejte si fotoja-strukturw.– Nevoitet tw clippohet

• Nuk mjafton njw foto – struktur e vetme pwr tw plotwsuar twr siperfaqen.– Pwrdorimi i shumwfisht i tw njejtws strukturw.– Edhe nw kwtw rast nevoitet tw kryhet clippimi.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 13

Pwrdorimi i shumwfisht i njw strukture

• Pozicionimi i njw texture bwhwt mw ndihmwn e njw pike referente.– Prej asaj pike mund tw shtrihen texturat nw tw gjitha drejtimet.

• Efektet e padeshirueshem: nw pjeset e bashkimit tw texturave eliminohet pwrmes:– Pwrdorimit tw texturave qw nuk shkaktojne kwto efekte– Modifikimi i textures, ashtu qw lidhja ndermjet dy texturave tw mos vwrehet.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 14

7/2/2011

8

Baferimi i dyfisht

• Buferimi i dyfisht (ang. double buffering) wshtw njw koncept i grafikws sw kompjuterve ku baferi i dritarws “Framebuffer“ (memorja e fotografise) sw Video – RAM-it tw kartela grafike ndahet nw dy pjesw.

• Qwllimi: Sigurimi i njw frkuence te fotos pa efektin e dridhjeve (kapsellitjeve) (ang. to flicker).– Menjanimi i llogaritjes sw fotografisw sw re dhe daljes sw saj ne

monitor nw menyrw paralele.

• Nw metoden paint() te klasws Frame te menjanohen llogaritjet. Kwto llogaritje te bwhen nw baferin e fotos BufferedImage bi; dhe pastaj tw thirret metoda repaint():

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 15

Paraqitja e tekstit (1)

• Per ty shtupur simbolet apo karakteret e caktuara duhet se pari te behet perzgjedhja e fonint(kompleti i germave)

• Madhesia ipet ne njesi point(pt- pika), ku 1pt=0.3515 mm• Fonti proporcional - Per cdo shkronje percaktohet baza.

Por disa jane nen ose mbi kete baze si shkronjat g ose ajo p .

• Kerning – disa shkronja shtypen me afer njera tjetres• Ligatures – ka te beje me ne mes te fjaleve te njejta si

(coffee-coffe), ku shkronjat f afrohen me afer njera tjetres.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 16

7/2/2011

9

Paraqitja e tekstit (2)

• Fonti mund te modifikohet ne Boldface (errsimi I shkronjes) ose Italic (pjerrtesimi I shkronjave)

• Fonti mund te ruhet ne forme te:– rasterit (me kete metode nuk ka nevoje per pasqyrim plotesues per

simbole gje qe eshte perparesi, por mangesia qendron ne ate se duhenper secilin stil duhet grafike individuale e rasterit )

– te grafikes vektoriale

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 17

Modelet e ngjyrave-Syri I njeriut dallon driten me gjatesi valore nga 300 nm deri ne 800 nm.

-Ngjyra definohet sishperndarjee intensiteteve pergjatespektrit te dukshem te drites.

-Dallohen receptoret:- KUQ-KALTER(BLU)-GJELBER

-Karakteristika kryesore te perceptimitte njeriut per ngjyra jane: ngjyrosja, ngopja dhe ndriqimi.

The colors of the visible light spectrum[1]

color wavelength interval

frequency interval

red ~ 700–635 nm ~ 430–480 THz

orange ~ 635–590 nm ~ 480–510 THz

yellow ~ 590–560 nm ~ 510–540 THz

green ~ 560–490 nm ~ 540–610 THz

blue ~ 490–450 nm ~ 610–670 THz

violet ~ 450–400 nm ~ 670–750 THz

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 18

7/2/2011

10

Imazhet e hirta dhe intensitetet• Njeriu ka perceptimin relativ te intensitetit te drites dhe eshte ne

gjendje te verej deri ne nje mase te caktuar intensitetet e nje numer te fundem te intensitetit te ngjyrave.

• Teknika e Halftoning-ut ka te beje me ate se nese pajisja dalese lejon vetem piksel binar per nje rezolucion te vogel mund te dallohen nivele te ndryshme te intensitetit.

• Kjo teknike kombinon pikselet e vegjel ne ato me te medhenj, per 2x2 piksel te vegjel mund te shprehen me 5 nivele te ndyrshme te intensitetit.– n x n piksel = n2+1 nivele te intensitetit

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 19

Modelet e ngjyrave (2)Dallohen keto modele te ngjyrave;

1. RGB modeli (red, green, blue), ku RGB marrin vlera integer ne mes te 1 dhe 0(0,0,0) – ngjyra e zeze(1,1,1) – ngjyra e bardhe(x,x,x) – paraqet ngjyrat tjera varesishtnga vlerat- Per enkodim shfrytezohet 1 bajte, ashtuqe cdo ngjyre primare ka 256 nivele teintensitetit- Jo cdo ngjyre mund te paraqitet me RGB

2. CIEXYZ – Commission International de l’Eclairage (CIE) ka paraqitur modelin me tri ngjyra artificialeKy model eshte I kundert me ate RGB. Ketu ngjyra primare jane: cijanik, purpurtedhe e verdha.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 20

7/2/2011

11

Modelet e ngjyrave (3)Printeret (Shtypesit) shfrytezojne:

- Modelin CMY, respektivisht CMYK (K – ngjyre e zeze).

3. YIQ modeli qe nuk bazohet ne ngjyra por ne Y- luminance dhe ne kromacitetin, tipin e ngjyres I dhe Q. Amerikan TV NTSC eshte I bazuar ne kete metode.

4. HSV modeli qe bazohet ne Hue(ngjyrim), Saturation (Ngopje) dhe Value(Intensitet). Ngjyrat gjenden nga kendet e piramides.

5. HLS modeli I perafret me modelin HSV por qe perfaqesohen ngjyrat me kendet e konit.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 21

Interpolimi i ngjyrave (1)-Shumica e modeleve te ngjyrave bazohen ne hapesiren e ngjyres tredimensionale , ku ngjyra percaktohet nga keto tre komponenta.- Tek modeli me i njohur I ngjyrave RGB, I cili perdoret ne TV me ngjyra, kameredigitale, video kamere etj., ngjyra mund te paraqitet si vektor (r,g,b) me vlera 0 dhe 1.- Paraqitja grafike e ngjyrave ndihmon ne interpolimin e ngjyrave, respektivishtndihmon ne rastet:

- Kur hapesira mbushet me ngjyre jo te njejte (johomogjene) vijne ne shprehje kombinimet e ngjyrave – gradienti I ngjyrave; gjetjen e ngjyrave duke njohur ngjyrat (vektoret) per disa mostraDefninohet ngjyra per dy pika p0 dhe p1, pastaj mund te gjendet per secilen pike tjeter p,

p = (1−α)p1+αp0 (ku α

∈ [0, 1]),

ngjyra me ekuacionin

(1−α)・(r0, g0, b0)+α・(r1, g1, b1).- permiresimin e textures (struktures) se riperseritur per njehapesireSmoothing operatoret te cilet aplikohen ne rastet e skajeve“problematike”. Keshtu, ne skaje aplikohet kjo procedure ashtu qeoperatori percakton nje ngjyre te re per piksel duke sforcuar ose jo efektinne keto skaje- transforimimi I nje imazhi ne nje tjeter, duke perdorur kombinimetkonvekse per intensitetet e vlerave r,g,b

-

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 22

7/2/2011

12

Interpolimi i ngjyrave (2)Tranformimi I imazheve shfrytezon tekniken e trekendeshave, me pikakorresponduese te njejta por me pozita jo te njejta.

Transformimi ka te beje me shfaqjen e nje imazhi tjetri humbet. InterpolimiI ngjyrave sherben per ngjyren e pikseleve.Pasi te jene percaktuar trekendeshet ku gjenden pikselet me vlerakorresponduese, atehere ngjyra e pikselit gjendet si kombinim konveks I ngjyrave nga pikselet korrepsondues per te dy imazhet. Trekendeshi ne imazhin e mesem eshte I lidhur me trekendeshin ne imazhin e pare dhe ate te dyte.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 23

Interpolimi i ngjyrave – Java 2D (3)

Ngjyra primare eshte dhene me vleren integjer, nje bajteshe: getRGB(x,y)

Nepermes klases Color gjenerohen vlerat e ngjyrave si tip integjer me vlera prej 0 derine 255:

int red = pixelColour.getRed();int green = pixelColour.getGreen();int blue = pixelColour.getBlue();

Ne Java 2D shfrytezohet metoda e interpolimit nepermes klases setRGB e jo asajColor, si:

Color mixedColour = new Color(rMix, gMix, bMix);mixedBi.setRGB(x,y,pixelColour.getRGB());

ku rMix, gMix, bmix paraqesin vlerat e interpoluara per te tri ngjyrat.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana 24

7/2/2011

13

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 25

Faleminderit për vemendjen!

7/2/2011

1

Modelimi dhe animimi 3DBazat e grafikës 3D

Rrezarta Pllana & Avni IslamajSemestri veror 2011

Prej realitetit 3D deri te modeli (1)

• Para se diqka të mund te paraqitet në monitor, duhet më parë të krijohet një model virtual 3D.– Pastaj ky model të konkretizohet

• Teknikat e modelimit të realitetit 3D përfshijnë:– Përcaktimin e formës gjeometrike të objektit– Karakteristikat e sipërfaqeve të objekteve

• Modelimi gjeometrik i objekteve– Në menyrë manuale prej një zhvilluesi.– Në menyrë automatike prej të dhënave të dala nga matjet.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 2

7/2/2011

2

Prej realitetit 3D deri te modeli (2)

• Modelimi manual i gjeometrisë së objekteve– Modelimi i objekteve të fantazisë (lojrat kompjuterike, prototipet e

autove, planifikimi i ndërtesave).• Kërkon pjesëmarrjen direkte të zhvilluesit

• Modelimi automatik i objekteve të realitetit (ndërtesat ekzistuese, mobiljet)– Prej të dhënave të marra përmes scanerëve 3D me një saktësi

extreme– Kërkon poashtu shpesh pjesëmarrjen direkte të zhvilluesit për

shkak të neutralizimit të kulmeve dhe ovalizimit të këndeve.

Modelimi dhe animimi 3D UPPZ Semestri veror 2011 33Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj Rrezarta Pllana

Prej modelit virtual deri të skena konkrete

• Paraqitja konkrete e një pjese të botës reale kërkon – Përcaktimin e pikës së vështrimit nënkupton edhe definimin e

zonës 3D të clipimit. • Drejtimin e vështrimit, • Këndit të vështrimit• Largësisë së vështrimit (sa larg mund të sheh vështruesi)

– Futja e ndriqimit në modelin virtual (pa ndriqim vështruesi nuk e vëren botën virtuale tash më të modeluar)

• Informatat për ndriqimin përcaktojnë karakteristikat e sipërfaqes së objekteve

– Drita me te cilen duhet të ndriqohet një objekt– Ku gjenden hijet e objekteve

• Clipimi i objekteve të dukshme.Modelimi dhe animimi 3D UPPZ Semestri veror 2011 44Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj Rrezarta Pllana

7/2/2011

3

Sistemi 3D i koordinatave• Sistemi 3D i koordinatave i dorës së djathtë:

Rrotullimi pozitiv i boshtit për 90° në drejtim të kundërt të akrepave përcakton rradhen X

→Y

→Z

→X.

– Rregulli i dores se djathte Gishti i madh për X-pozitiv, gishti tregues për Y-pozitiv dhe gishti i gjatë për

Z-pozitiv.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 5

Koordinatat homogjene në 3D

• Kordinatat homogjene më qëllim të paraqitjes së tarnsformimeve të njëpasnjëshme përmes shumëzimit të matricave

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 6

.1.~~

,~~

,~

,~

pika përgjigjet i

homogjene koordinata në0),~,~,~( ës.0),~,~,~(:homogjenevekoordinata

4përmsparaqitëthapsirënnëpikëNjë

3

3

wspecialRastiwzzdhe

wyy

wxxkuRnë

wz

wy

wxwmëwzyxPik

wkuwzyxR

7/2/2011

4

Transformimet gjeometrike –translacioni

• Translacioni për vektorin:

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 7

1000100010001

),,(:

111000100010001

1'''

z

y

x

zyx

z

y

x

z

y

x

ddd

dddTnittranslacioeMatrica

dzdydx

zyx

ddd

zyx

Tzyx ddd ),,(

Transformimet gjeometrike –skalimi

• Skalimi për faktorin:

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 8

1000000000000

),,(:skalimiteMatrica

111000000000000

1'''

z

y

x

zyx

z

y

x

z

y

x

ss

s

sssS

zsysxs

zyx

ss

s

zyx

zyx sdhess ,

7/2/2011

5

Transformimet gjeometrike –rrotullimi rreth boshtit z

• Rrotullimi rreth boshtit z për këndin θ

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 9

1000010000cossin00sincos

)(:trrotullimieMatrica

11000010000cossin00sincos

1'''

zR

zyx

zyx

Transformimet gjeometrike –rrotullimi rreth boshtit y

• Rrotullimi rreth boshtit y për këndin θ

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 10

10000cos0sin00100sin0cos

)(:trrotullimieMatrica

110000cos0sin00100sin0cos

1'''

yR

zyx

zyx

7/2/2011

6

Transformimet gjeometrike –rrotullimi rreth boshtit x

• Rrotullimi rreth boshtit x për këndin θ

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 11

10000cossin00sincos00001

)(:trrotullimieMatrica

110000cossin00sincos00001

1'''

xR

zyx

zyx

Rrotullimi rreth një boshti të çfardoshëm (1)

• Rrotullimi rreth një boshti të çfardoshëm mund të arrihet përmes rrotullimeve elementare të njëpasnjëshme ndaj boshteve të koordiantive dhe translacionet adekuate.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 12

)()()()()()()(),( 111

1 PTRRRRRPTvR xyzyx

Kahja e multiplikimit të matricave

7/2/2011

7

Rrotullimi rreth një boshti të çfardoshëm (2)

• Janë dhënë: Pika P që duhet të rrotullohet, këndi δ dhe boshti P₂ - P₁ rreth të cilit pika duhet të rrotullohet.

1. Translacioni i boshtit në origjinë2. Rrotullimi rreth boshtit X në rrafshin XZ3. Rrotullimi rreth boshtit Y në boshtin Z4. Rrotullimi rreth boshtit Z për këndin δ5. Inversioni i hapit 36. Inversioni i hapit 27. Inversioni i hapit 1

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 13

1. Translacioni i boshtit rrotullues

• Translacioni i boshtit të rrotullimit:– Translacion i pikës P₁ në origjinën e sistemit të koordinatave

• Boshti i rrotullimit

• Vektori njësi i boshtit të rrotullimit

• Komponentet e drejtimit

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 14

7/2/2011

8

2. Rrotullimi rreth boshtit X në rrafshin XOZ

• Rrotullimi:

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 15

)(xR

Rrotullimi rreth boshtit Y në boshtin Z

• Rrotullimi

• Pastaj rrotullimi

• Dhe ne fund:

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 16

)(yR

)(zR

)()()()()()()(),( 111

1 PTRRRRRPTvR xyzyx

7/2/2011

9

Modelimi i skenës 3D

• Modelimi i një skene 3D kërkon:– Definimin e objekteve 3D– Pozicionimi i objekteve ne skenë.

• Modelimi i objekteve 3D– Objektet themelore 3D: Sfera, cilindri, kuadri, koni– Objektet komplekse: Krijohen prej bashkimit të objekteve

themelore

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 17

• Modelimi i karrikës:– Krijimi sipas përmasave të dhëna i objekteve

themelore– Pozicionimi i tyre përmes transformimeve

Grafet e skenës (1)

• Problem: Kryerja e transformimeve mbi objekte komplekse – më komplekse se karrika– Punë shumë e mundimëshme për modeluesit e skenave 3D

• Zgjidhja: Përdorimi i grafeve të skenës– Grupimi i objekteve në mënyrë hierarkike sipas transformimeve

• Shembull: Karrika– Krijimi i nje grupe të të njejtatve transformime (grup i

transformimeve) për këmbët, pjesen ulëse dhe pjesën mbeshtetëse të karrikës

– Transformimi i cili zbatohet mbi një grupë të transformimeve vepron automatikisht mbi të gjitha objektet e grupit (p.sh. Karrika).

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 18

7/2/2011

10

• Shembulli i helikopterit dhe pemës.

Grafet e skenës (2)

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 19

Rrënja

Dy nyjet femijë të

nyjes rrënjë

Helikopteri meplatformë

• Gjethet (nyjet gjethe) janë:– Objekte themelore gjeometrike (cabin, tail, rotor, platform, trunk, leaves)– Transformime (tf)

• Të gjitha nyjet e brendëshme janë grupe të transformimeve (tg)• Një grup i transformimeve mund të ketë si nyje fëmijë:

• Një grup tjeter të transformimeve • Objekt themelor gjeometrik• Transformim gjeometrik

• Grupet e transformimeve shërbejnë :– Për të mbajtura te lidhura objektet themelore gjeometrike me

transformimet, me qëllim të pozicionimit të tyre.– Që grupet tjera të transformimeve të cilat reprezentojnë objekte

komplekse të bashkohen në një grup tjetër për pozicionim.

Grafet e skenës (3)

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 20

7/2/2011

11

Animimi në 3D (1)

• Një grup i transformimeve mund jo vetëm të transformohet (transformim statik) për t‘u pozicionuar por edhe për të levizur.

• Për të kaluar një objekt (ose një grup i transformimeve) prej një pozite (ose gjendje) fillestare në një gjendje përfundimtare përdoren interpolatorët.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 21

Animimi në 3D (2)

• Interpolatoret më të rëndësishem janë:– Interpolatori i pozicionimit: Translacioni si animim – Interpolimi linear

prej pikës fillestare deri të pika përfundimtare.– Interpolatori i rrotullimit: Rrotullimi si animim – interpolimi i një lëvizje

rrotulluese– Interpolatori i skalimit: Skalim kuntinual– Interpolatori i ngjyrave: Ndryshim kontinual i ngjyrave– Interpolatori i pathit: Interpolim përgjat një konture (poligoni)

• Për të realizuar një animim në 3D, nuk mjaftojnë vetëm interpolimet. Nevoitet të përcaktohen edhe vlerat – alfa:– Koha e startimit të animimit: Kur duhet të startohet interpolimi. – Drejtimin e animimit: Interpolim para apo mbrapa– Shpejtësia: Sa duhet të zgjas kalimi prej gjendjes 0 në gjendjen 1.– A ka nxitim ose frenim të lëvizjes dhe a ka përseritje të interpolimit.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 22

7/2/2011

12

Vlerat – alfa

• Koha tt – sa milisekonda pas startimit të programit fillojnë vlerat alfa të ekzekutohen.

• Koha pdd – sa milisekonda mbetet vlera e alfës = 0.• Koha iad – kohëzgjatje e kalimit prej o deri të 1

– Koha iard – kohëzgjatja e nxitimit linear, deri sa të arrihet shpejtësia maksimale.

• Koha aa1d – Kohëzgjatja e alfa = 1

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 23

• Koha dad dhe dard –domethënie të anasjelltë me kohët iad dhe iard për kalimin e vlerave te alfës prej 1 në 0.

• Koha aa0d që duhet të kalojë në animimin në alfa=0.

lc- numri i përseritjeve

Projeksioni

Projeksionin e një objekti 3D→2D e fitojmë duke lëshuar rrezet dalëse prej qendrës së projektimit (kjo qendër mund të ndodhet edhe në pafundësi) deri të pikat e objektit që duhet të projektohet dhe pastaj llogariten pikëprerjet e këtyre rrezeve më rrafshin e projektimit i cili ndodhet në mes të qendrës së projektimit dhe objektit.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 24

Projeksioni perspektiv – qëndra e projektimit jo në pambarim Projeksioni paralel – qendra e

projektimit në pambarim

Qëndra e projektimit =

vendi i vështruesit

7/2/2011

13

Projeksioni paralel (1)

• P.sh. Projeksioni paralel në një rrafsh paralel me rrafshin (x, y) ose z=z₀ në koordianatat homogjene.

• Nëse rrafshi i projektimit nuk është paralel me rrafshin (x, y), atëherë duhet që para matricës së mësiperme të futet një transformim përkatës i cili rrafshin e dhënë e transformon në një rrafsh paralel me rrafshin (x, y).

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 25

Projeksioni paralel (2)

• Transformimi i rrafshit të dhënë në rrafshin paralel me rrafshin (x, y) përmes një rrotullimi rreth boshtit y dhe një rrotullim rreth boshtit x.

• Çka nëse rrezet nuk janë paralele me boshtet e kordianatave edhe pse qendra e projektimit është në pambarim? Projeksioni i pjerrtë => Jo në këtë ligjeratë.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 26

)()( xy RR

7/2/2011

14

Projeksioni perspektiv (1)

• Shembull: Projeksioni perspektiv me qendër të projektimit në origjinën e koordinatave në rrafshin e projektimit paralel me rrafshin (x, y).

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 27

Projeksioni perspektiv (2)

• Nëse e zhvendosim origjinën në rrafshin projektues dhe qendrën e projektimit në -z₀.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 28

w

Koordinata homogjene

Z=0

7/2/2011

15

Projeksioni perspektiv (3)• Projeksioni perspektiv mund të realizohet si një ekzekutim i

njëpasnjëshem i një projeksioni paralel dhe një transformimi.

• Projeksioni perspektiv projeksioni paralel.

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 29

Z₀=0

Projeksioni perspektiv (4)

• Përmes një translacioni për një vektor të formës (0, 0, z₀) dhe një projeksioni perspektiv me qendër të projektimit në origjinë dhe rrafsh të projektimit paralel me rrafshin (x, y) mund të fitohet projeksioni perspektiv me qendër të projektimit në pikën (0, 0, -z₀) dhe rrafsh te projektimit (x, z).

• Çdo projeksion perspektiv mund të fitohet përmes një projeksioni perspektiv me qendër të projektimit në origjinë.

• Projeksionet paralele dhe perspektive mund të fitohen përmes transformimeve adekuate në një projeksion paralel në rrafshin e projektimit (x, y).

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 30

7/2/2011

16

Projeksioni perspektiv (5)

• Rrafshi i projektimit ndërpren një respektivisht 2 boshte të sistemit të koordinatave

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 31

Projeksioni perspektiv (6)

• Rrafshi i projektimit ndërpren 3 boshte të sistemit të koordinatave

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 32

7/2/2011

17

Ushtrime

• StaticSceneExample.java

• SimpleAnimation3D.java

Copyright 2011 Avni Islamaj Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 33

Faleminderit për vëmendjen!

Copyright 2011 Avni Islamaj Rrezarta Pllana 34Modelimi dhe animimi 3D UPPZ Semestri veror 2011

7/2/2011

1

Modelimi dhe animimi 3DModelimi i trupave 3D

Rrezarta Pllana & Avni IslamajSemestri veror 2011

Modelimi i objekteve 3D (1)

Deri tani:• Objektet e botës virtuale janë paraqitur përmes trupave

gjeometrik elementar, si: sfera, cilindri, koni, etj.• Objektet komplekse krijohen prej objekteve themelore.Qëllimi i këtij kapitulli:• Pyetja: A mjaftojnë objektet themelore dhe objektet

komplekse për realizimin e skenës?• Përgjegjja: JO, në vazhdim të këtij kapitulli – teknikat e

modelimit.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 2

7/2/2011

2

Trupat 3D (1)

• Çka është një trup 3D?• Definicion: Çdo nënbashkësi e hapsirës R³ është një trup 3D?

– Kjo do të thotë se pika, drejtëza dhe sipërfaqja janë trupa 3D.– Një fletë e letrës është poashtu një trup 3D, që mund të paraqitet në

formë të një kuadri me trashësi extreme të vogël.

• Në vazhdim do të shqyrtojmë strukturat e vërteta 3D, në të cilat nuk bëjnë pjesë:– Pikat e izoluara, drejtëzat e izoluara dhe – Trupat pa drejtëza dhe siperfaqe të varura

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 3

Trupat 3D (2)

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 4

• Drejtëzat dhe siperfaqet e izoluara dhe të varura

7/2/2011

3

Siperfaqet e trupave 3D

• Reprezentimi i trupave përmes sipërfaqeve: Për paraqitjen e trupave 3D është më rëndësi esenciale sipërfaqja e tyre dhe jo bashkësia e pikave në R³ prej të cilave përbëhet ai trup.– Përjashtim, trupat transparent

• Modelimi i trupave shndërrohet në:– Modelim të siperfaqeve (shumicën e rasteve)

• Modelimi i bashkësisë së pikave të hapsirës R³– Objektet, dimenzionet e të cilave skanohen nuk sjellin shumë

informatë për sipërfaqen– Sipërfaqja llogaritet në fund mbi bashkësinë e pikave të

modeluara.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 5

Modelimi i sipërfaqeve

• Modelimi i sipërfaqeve të lakuara bëhet përmes formave komplekse (matematikës komplekse e cila është në dispozicion).– Problem: Përcaktimi i ndriqueshmërisë dhe efekteve tjera të

sipërfaqeve

• Paraqitja grafike e skenës përmes sipërfaqeve të lakuara llogaritet përmes përafrimeve të sipërfaqeve me poligone (zakonisht me trekëndësha).– Thjeshtohet llogaritja e efekteve të ndriqimit– Thjeshtohet llogaritja e projeksionit d.m.th llogaritja e pikëprejeve

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 6

7/2/2011

4

• Përafrimi i sipërfaqeve të lakuara përmes poligoneve quhetTESSELATION.

• Shfrytëzimi vetëm i trekëndëshave për poligone nuk mund të themi se paraqet kufizim (restriksion) pasi cdo poligon mund të paraqitet përmes trekëndëshit.

• Paraqitja përmes trekëndëshave e poligoneve ka mundësuar implementimin e algoritmeve eficiente direkt në grafikkartë.

Poligonet si elemente të sipërfaqeve

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 7

Sipërfaqet e dukshme

• Problem: Dallimi i sipërfaqeve që shihen (përparme) dhe atyre qe nuk shihen (pasme) të një trupi.

• Zgjidhja: Orientimi i trekëndshave ose poligoneve gjatë modelimit të një siperfaqeje.

• 0, 1, 2 – sipërfaqe që shihet në një trup• 0, 2, 1 – sipërfaqe e pa dukshme e trupit

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 8

7/2/2011

5

Orientimi i trekëndshave nëshembullin e tetraedit

• Nëse një trekëndësh me orientim 0, 2, 1 (në drejtim të akrepave të orës) është pjesë e një sipërfaqeje të një trupi 3D, atëherë ai patjeter është i mbuluar prej një trekëndëshi tjetër i cili shihet prej vështruesit.– Për këtë arsye duhet të mënjanohen drejtëzat dhe siperfaqet e

izoluara dhe të varura

• Orientimi i sipërfaqeve të tetraedit– P₀, P₃, P₁– P₀, P₂, P₃– P₀, P₁, P₂– P₁, P₃, P₂

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 9

Sipërfaqja P₀, P₁, P₂mbulohet prej sipërfaqesP₀, P₂, P₃ dhe sipërfaqes P₀, P₃, P₁P

Teknikat e modelimit – VOXELS (1)

• Teknika me e thjeshtë për modelimin e objekteve 3D quhetVOXELS. – Hapësira 3D është e ndarë në kube të vogla të barabarta të quajtura

voxels, të cilat paraqesin densitetin e nje trupi apo objekti.

• Kështu për një rezolucion të caktuar për 1000x1000 piksel për paraqitje të objektit në hapësirën 2D, në atë 3D nevojiten 1000x1000x1000 = 109 .

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 10

7/2/2011

6

Teknikat e modelimit – VOXELS (2)

• Një VOXEL i takon një trupi, nëse qendra e tij (pika e mesme) gjendet brenda trupit.

• Kualiteti i aproksimimit të një trupi përmes VOXELS varet nga madhësia e një VOXEL.– VOXELS të vegjël

→ aproksimim i mirë, mirëpo përcillet me shumë

vështirësi në llogaritje dhe momorizim.– VOXELS të mëdhenjë

→ aproksimim i keq, mirëpo përcillet me pak

vështirësi në llogaritje dhe momorizim.

• Trupat ruhen në memorie si:– Matricë binare (010101111)– Listë e VOXELS

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 11

Pema oktale e kubave.

• OCTREES janë një alternativë eficiente për modelim të trupave përmes voxels.

• Kjo teknikë bazohet në voxel të madhësive të ndryshme, që do të thotë se, për një objekt të caktuar vendoset një voxel më i madh, e pastaj për pjesë më të vogla të tij shfrytëzohen voxel më të vegjël.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 12

7/2/2011

7

Ndarja e sipërfaqes në katrorë

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 13

• Futja e trupit në një kub tëmadh.

• Ndarja e kubit në 8 kuba tëmadhësisë së njejtë.

• Kubat që shtrihen plotësishtbrenda (in) ose jashtë (off) trupit selektohen dhe nukcopëzohen më tutje.

• Kubat që përmbajnë ramine trupit (on), ndahen edhemë tej deri sa të arrihet njëgjatësi minimale e brinjëve.

Pema oktale e kubeve• Modeli i kubeve dhe i pemës oktale janë të papërshtashme

për sipërfaqe të lëmuara – vetëm për aproksimim të objekteve në baze të të dhënave të marra prej scanerëve.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 14

7/2/2011

8

Teknikat e modelimit – CSG (1)

• Përvec voxels dhe octrees ekzistojnë teknika më të avancuara të integruara për modelimin e objekteve – CSG (Constructive Solid Geometry) .

• Bazohet në koleksionin e objekteve (trupave) gjeometrike elementare. Pastaj, aplikohen transformimet dhe operacionet e bashkësive si unioni, prerja, diferenca etj. dhe formohen objektet e reja.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 15

Teknikat e modelimit – gjeometria e zhvendosjeve (1)

• Nje tjetër teknikë e modelimit është teknika përfaqësimi përmes SWEEP.

• Objekti 3D gjenerohet nga zhvendosja e sipërfaqeve 2D sipas një trajektorje.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 16

Trupi i formës së patkoit fitohet me zhvendosjen e sipërfaqes së katërkëndëshit sipas harkut të dhënë

Prizma trifaqësore fitohet me zhvendosjen e trekëndëshit sipas drejtëzës së dhënë.

7/2/2011

9

Teknikat tjera të modelimit

• Modeli: Teknika më e rëndësishme e modelimit është teknika e llogaritjes së sipërfaqeve përmes lakoreve parametrike.

• Vizualizimi (paraqitja grafike): Aproksimimi i sipërfaqeve të objekteve përmes poligoneve.

• Përshkrimi i sipërfaqeve të një objekti përmes poligoneve kërkon të dihen:– Lista e pikave të polinomeve – Informatat për ngjyrën dhe texturën– Informata për vektorët normal, përmes të cilëve llogariten reflektimet

e dritës.

17Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana

Aproksimimi përmes poligoneve (1)

• Gjatë aproksimimit të një sipërfaqe të lakuar përmespoligoneve duhet të ruhen këto të dhëna.– Pikat (kulmet) e poligoneve– Vektorët normal të sipërfaqes së lakuar në këndet e poligonit.

• Edhe aproksimimi i sipërfaqeve të helikopterit është bërëpërmes trekëndëshave.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 18

7/2/2011

10

Aproksimimi përmes poligoneve (2)

• Sa më i madhë numri i trekëndësheve aq më i mirë aproksimimi i sipërfaqeve të objekteve (shikoni rritjen e numrit të trekëndëshave në figurë prej majtas kah djathtas.

• Me rritjen e numrit të trekëndëshave rritet edhe shkalla e vështërsisë së llogaritjes së pikave të trekëndëshave dhe pikave prerëse gjatë renderimit.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 19

Modelimi i sipërfaqeve• Sipërfaqet e lakuara të trupave aproksimohen në shumicën e

rasteve përmes shumë trekëndëshave të vegjël.• Jo shumë rrallë ky modelim bëhet përmes formave të lira të

sipërfaqeve.• Vektorët normal nuk llogariten prej trekëndëshave të

aproksimuar por prej sipërfaqes origjinale.

• Format e lira të lakoreve janë pjesë e formave të lira tësipërfaqeve.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 20

7/2/2011

11

Modelimi i lakoreve

• Interpolimi: vizatim i lakoreve prej një bashkësie të dhënë të pikave.

• Aproksimimi: kërkon që lakorja vetëm t‘ju afrohet pikave – jo edhe të kalojë nëpër pika.

• Definimi i lakoreve (edhe sipërfaqeve) përmes parametrave (pikave) duhet të plotësojë këto kushte:– Kontrollueshmëria - kontrollueshmëria e kalimit të lakores përmes

parametrave (pikat kontrolluese)– Principin e lokaliteteit - mundësia e ndryshimit lokal të lakores.– Lëmushmëria – vazhdueshmëria, kufizimi i variacioneve etj.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 21

Interpolimi polinomial

• Përmes (n+1) pikave mbështetëse mund të krijohet një interpolim polinomial i shkallës n.

• Shembull: Polinom 5 shkallësh me 6 pika mbështetëse:

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 22

7/2/2011

12

Interpolimi polinomial

• Të metat:– Lakoret që kanë shume pika mbështetëse krijojnë polinom

interpolues me shkallë të madhe.– Pricipi i lokalitetit thyhet– Caktimi i vështirë i pikëprerjeve të lakoreve polinomiale me zonën e

renderimit.– Polinomet e shkallës së lartë tentojnë të oscilojnë.

• Zgjidhja: polinomet e Bézier.– Futja e pikave kontrolluese.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 23

Lakoret e Bézier-it

• Polinomi i Bernsteinit i shkallës (rendit) n:

• Ku:

• Lakoret e Bézier-it:

• Pikat quhen pikat kontrolluese.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 24

7/2/2011

13

Lakoret e Bézier-it

• Lakorja e Bézier-it interpolon pikën e fillimit dhe atë të fundit , ndërsa pikat tjera kontrolluese nuk

shtrihen në lakore.• Lakoret e Bézier-it janë simetrike në pikat kontrolluese. Pikat

kontrolluese krijojnë të njejtën lakore.

• Lakoret e Bézier-it janë të pa përshtatshme për numër të madh të pikave kontrolluese, sepse fitohen polinome të rendeve të larta

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 25

B-Splines• B-Splines përfitohen prej disa lakoreve të Bézier të rendit të ulët

(zakonisht të rendi 3 ose 4) për të definuar një lakore prej një bashkësie të pikave kontrolluese.

• B-Spline me pika nyje P₁, P₄, P₇ dhe pika të brendëshme të Bézier P₂, P₃, P₅, P₆.

• B-Spline interpoloin pikat kontrolluese duke i futur lakoret e Bézier njërën pas tjetrës në pikat nyje. Pikat tjera kontrolluese quhen pika të brendëshme të Bézier.

Copyright 2011 Avni Islamaj, Rrezarta Pllana Modelimi dhe animimi 3D UPPZ Semestri veror 2011 26

Vazhdueshmëria e bashkimit të dy lakoreve tëBézier arrihet duke mbajtur

dy pikat e brendëshmefqinje të pikës nyje si

kolineare.

7/2/2011

14

Modelimi i sipërfaqeve përmes poligonvenë Java 3D

• Ushtrimi_1 : StaticSceneExample.java (paraqet tesselation e objekteve elementare gjeometrike në program)

• Ushtrimi_2: TesselationBwExmaple.java (gjenerimi I figurës së caktuar)

• Ushtrimi_3: TesselationExmaple.java (paraqitja e ngjyrave)

• Ushtrimi_4: TesselationResolution.java (përcaktimi I figurës përmes rezulucionit të ndryshëm)

• Ushtrimi_5: Load3DExmaple.java (demonstron përfshirjen e objektit në formatin waveFront te programit Java 3D)

27Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 Avni Islamaj, Rrezarta Pllana

Faleminderit për vëmendjen!

7/2/2011

1

Percaktimi i siperfaqeve te dukshmeLigjerata 7

Rrezarta Pllana & Avni IslamajSemestri veror 2011

Percaktimi i siperfaqeve te dukshme (1)• Jane dy aspekte qe duhet konsideruar ne

rastin e percaktimit te siperfaqeve tedukshme– Klipimi do te heq te gjitha objektet

jashte objektivit te veshtruesit– Renderimi eshte i nevojshem vetem per

objektet brenda hapesires se klipimit.• Per dallim prej klipimit ne hapesiren 2D,

klipimi ne hapesiren 3D eshte paksa mekompleks.

• Keshtu, perpara se te paraqitet skena ebotes 3D duhet te specifikohen nje numer iparametrave, si: pozita e caktuar(koordinatat e pikes), drejtimi i shiqimit,plani i projeksionit etj.

2Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

2

Percaktimi i siperfaqeve te dukshme (2)

• Hapesira klipuese 3Dkorrespodon ne piramideinfinit per rastin eprojeksionit perspektive dhene nje kuti infinit ne rastin eprojeksinit paralel.

3Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Percaktimi i siperfaqeve te dukshme (3)

• Distanca qe nje person arrin te veshtroj eshte pothuajse pambarim. Keshtu deri sa personi_01 sheh yjet ne nje largesi te caktuar, personi_02 sheh gishtin qe e ka afer. Porse, nuk eshte e mundur qe nje person ti shehte dy keto pamje ne nje shikim te vetem dhe ne te njejten kohe. Fokusi ka te beje me rrafshin e perparem dhe te pasem te hapesiren klipuese(front and back clipping plane).

• Rrafshi I perparem percakton distancen me te afert kurse fokusi I pasem ka te beje me distancen ne te cilen objektet jane ende ne fokus.

• Per projeksionin perspektive hapesira klipuese ka formen e piramides, kurse per ate paralel ka formen e nje kutie. Plani projektues ne te dy rastetgjendet ne mes te dy rrafsheve te klipimit.

4Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

3

Klipimi ne Java 3D• SimpleUniverse.java

View v = simpUniv.getViewer().getView(); v.setFieldOfView(angle); // per te modifikuar kendin e vrojtuesit

v.setFrontClipDistance(fcdist); //frontv.setBackClipDistance(bcdist); //back

• ClippingPlanes.java //kendi eshte ngushtuar ne 30˚per dallim prej vleres default 45˚.

• Static SceneExample.java //vlera default 45˚

5Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Algoritmet e percaktimit te siperfaeve te dukshme

• Problemi I determinimit te problematikes se cilat objekte jane te dukshmedhe cilat jo te dukshme ju referohemi si linje e dukshme dhe determinim I siperfaqes se dukshme. E njejta gje vlen per ato te padukshme(te fshehta)

• Dallohen:– Algoritmet e saktesise se imazhit dhe– Algoritmet e saktesise se objekteve

• Algoritmet e saktesise se imazhit bazohen ne tekniken e rastit, kursealgoritmet e saktesise se objekteve bazohen ne pozicionimin relativ teobjekteve.

6Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

4

BackFace Culling• Back Face Culling bazohet ne heqjen e trekendeshave dhe poligoneve qe

nuk jane ne kendin e shikuesit para se te behet determinimi I largesiese se shikuesit.

• Heqja nga back-face culling behet atehere kur vektori normal dhe drejtimiI projeksionit kane kendin me te madh se 90˚.

7Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

n = (nx, ny, nz) -- vektori normalez = (0, 0, 1) -- vektori njesi I projeksionit

Particionimi hapesinor (1)• Back-face cullingu zvogelon llogaritjet kur merret ne konsiderate

shikueshmeria. Te njejten gje e kryen edhe particionimi hapesinor.• Hapesira klipuese ndahet ne nenregjione te madhesise se njejte. Objektet

i perkasin vetem nje nenregjioni dhe regjionet korresponduese me te cilatprerja nuk eshte e zbrazet.

• Ne rastin e algoritmeve te object-precision (saktesise se objekteve) vetemobjektet brenda nje kutie te perbashket mund te percaktohen ne rrafshine shikueshmerise. (Image precision –MAJTE dhe Object precision-DJATHTE)

8Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

5

Particionimi hapesinor (2)

• Algoritmet nen-ndares rekursiv vazhdojne te ndajne hapesiren klipuesederisa te qartesohet objekti.

• Algoritmet e hapesires nen-ndarese ndajne katerkendeshin klipues neforme rekursive – IMAGE PRECISION.

• Octree algortimet ndajne hapesiren klipuese – OBJECT PRECISION.

9Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Teknikat Image Precision (1)• Ne grupin e ketyre teknikave

dallohet z-bufferimi osealgoritmi depth-buffer.

• Ne kete teknike shfrytezohetframe bufferimi per ngjyrate pikseleve te imazhit dhez-bufferimi ose depthbufferimi eshte vlere percdo piksel.

• Frame bufferimi inicializohetme ngjyre te background .

• MBISHKRIMI OSE JO IELIPSES.

• VLERA Z ME E MADHE OSEME E VOGEL E OBJEKTEVE.

• VLERA Z ME E VOGELMBISHKRUAN VLEREN METE MADHE.

10Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

6

Teknikat Image Precision (2)

• Per te vendosur poligonet ne frame dhe ne z-buffer aplikohet teknikascan-line.

• Keshtu, nese rrafshi ne te cilen shtrihet poligoni ipet me:

A

・ x + B

・ y + C

・ z + D = 0.Vlera z pergjate scan line teknikes ipet me

znew = zold + Δz

11Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Scan Line teknika e kendeve (1)• Sic eshte treguar me pare qe z-bufferimi bazohet ne tekniken scan line.• Nje alternative tjeter eshte edhe projeksioni I kendeve si dhe aplikimi I scan

line teknikes.• Teknika Scan Line bazohet ne 3 tabela:

TAB__1 (edge tabela per kendet jo horizontale)

12Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

TAB__2 (informatat per poligonin)

TAB__3 (informatat per poligonin)

7/2/2011

7

Scan Line teknika e kendeve (2)• Ne Scan Line tekniken fillon njesimi

nga InFlag ZERO dhe pastajndryshon ne 1, pastaj ne prerjen eradhes prap ndryshon ne ZERO.

• Ne fund vetem ato raste meInFlag = 1 dallohen per te cilatpercaktohet vlera z.

• Poligoni me vlere z me te vogeleshte I duhuri per te konsideruarpikselin.

13Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Ray Casting (Leshimi i rrezes) (1)• Edhe kjo eshte nje teknike e Image Precision.• Per cdo piksel ne katerkendeshin e klipimit

te rrafshit projektues leshohet nje rrezeparalel me drejtimin e projeksionit.

• Rrezja duhet te kete fillin ne front dhe neback te rrafshit te klipimit.

• Objekti I pare te cilin e takon rrezjapercakton ngjyren e pikselit.

• Ray casting eshte e pershtatshme perprojeksionet paralele si dhe ato perspektivepa pasur nevoje per transformime shtese.

• Rrezet jane paralele me drejtimin eprojeksionit (projeksioni paralel) kurse perate perspektive rrezet pershkojne lidhjen nemes te qendres se projeksionit dhe tepikseleve.

• Pikselet korrespodojne me qendrat ekatroreve te planit projektues.

14Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

8

Ray Casting (Leshimi i rrezes) (2)

15Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Qendra e projeksionit me x₀,y₀,z₀Rrezja per piksel me koordinate x1,y1,z1

Per rastin t<0 rrezja eshte pas qendres se projeksionitPer tє [0,1] ne mes te qendres dhe rrafhsit projektuesPer t>1 pas rrafshit projektuesPastaj, behen llogaritje shtese per te determinuar nese pika prerese eshtene poligon.

Ray Casting (Leshimi i rrezes) (3)

16Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

• Kjo teknike qon ne efekte aliasing kurrrafshi I pasem I klipimit eshte shumelarg.

• Backgroundi perbehet nga objektetqe priten ne mes vete ne distance telarget ashtu qe pikselet fqinje qeparaqesin background te mos kenengjyre te njejte. Per kete arsyeperdoret supersampling(supermostra). Per cdo pikselleshohen nje os me shume rreze.Ngjyra e piksel llogaritet si peshe engjyrave korresponduese tepercaktuar nga objektet qe rrezettakojne.

7/2/2011

9

Algoritmet me prioritet

17Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

• Keto jane algoritme object-precision.• Keto algoritme kane per detyre shmangien e parregullsive ne rastet e z-

bufferimit kur kemi te bejme me vendosjen e objekteve qe gjenden nedistance te larget.

• Keto algoritme kane te bejne me problematikat e gjetjes se nje rendi tecaktuar ashtu qe te behet vendosja e objekteve duke e shmangur konfliktin.

• Keshtu, se pari projektohen objektet e largeta e pastaj ato te aferta.• Te konsiderojme poligonet P dhe Q, duke shiquar te gjitha pikat e nje poligoni

te caktuar. respektivisht duke percaktuar nese te gjitha koordinatat e njepoligoni jane me te vogla se ato te objektit tjeter per cilindo bosht koordinativ.Ne kete forme behet shmangja e konfliktit. (X-MAJTE, Y-DJATHTE)

• RASTE SHUME KOMPLEKSE!!

Faleminderit për vemendjen!

18Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

1

Iluminanca dhe HijezimiLigjerata 7

Rrezarta Pllana & Avni IslamajSemestri veror 2011

Hyrje• Vetem projeksioni ne rrafshin projektues nuk eshte i mjaftueshem per

te paraqitur skenen 3D.• Per paraqitjen sa me reale te skenes 3D nevojitet edhe paraqitja e

ndriqimit, reflektimi i drites etj.

2Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

• Ne fig e mesiperme jane paraqitur sfera dhe kubi me ngjyrehomogjene dhe me efekt te iluminances ne kendet e objektevegjeometrike

• Shading(Hijezimi) ka te beje me renderimin e siperfaqes se objekteveme efekte te iluminances dhe reflektimit te drites.

7/2/2011

2

Burimet e drites• Ne paraqitjen e objekteve 3D duhet pasur parasysh edhe informaten e

iluminances se skenes.• Nje ose disa burime te drites mund te kontribuojne ne iluminance.• Ngjyra si edhe intensiteti i drites definohen permes vlerave te

caktuara RGB. Dallohen:

– Ambient Light: ska drejtim dhe ska as burim specifik te drites, por eshte rezultat ireflektimeve te njepasnjeshme

– Directional Light Source: ka ngjyre dhe drejtim te caktuar– Point Light Source: burimi i drites ka poziten e caktuar dhe drita shperndahet ne te

gjitha drejtimet duke rezoltuar ne zvogelimin e intensitetit me rritjen e distances.– Spotlight: shperndarja e drites eshte ne forme konike dhe karakterizohet me ngjyre

te drites, pozite dhe drejtim te ndricimit.

3Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Burimet e drites ne Java 3D• MovingLight.java (ndryshimi I drejtimit te drites)

Color3f lightColour = new Color3f(r,g,b); //percaktimi I ngjyres RGB

//Ambient Light KODIAmbientLight ambLight = new AmbientLight(lightColour);ambLight.setInfluencingBounds(bs);bgLight.addChild(ambLight);

//Directional LightVector3f lightDir = new Vector3f(x,y,z);DirectionalLight dirLight =new DirectionalLight(lightColour,lightDir);

//PointLightPointLight pLight =new PointLight(lightColour,location,attenuation);

//SpotlightSpotLight spLight =

new SpotLight(lightColour,location,attenuation direction,angle,concentration);

4Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

7/2/2011

3

Hijezimi ne 3D

Material ma = new Material(ambientColour,emissiveColour, diffuseColour,specularColour, shininessValue);

LightingExample.javaLightingExample2.java

5Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Textures (Struktura)

6Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

BackGroundExample.javaStaticSceneExample.java

7/2/2011

4

Fog (Mjegulla)

7Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

Mjegullimi I skenes mund te jene linear dhe eksponencial.LinearFog fog = new LinearFog(colour,d_0,d_1);fog.setInfluencingBounds(bounds);theScene.addChild(fog);

ExponentialFog fog = new ExponentialFog(colour,alpha);

LinFogExample.javaExpFogExample.java

Sound Effect

8Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana

SoundExample.java• Sounds (Zerat) ruhen si wave ose mpr fajlla.• Efekti I Doplerit – kur vetura e ambulances dhe ajo e policise me

sirena I afrohen njera tjetres.

7/2/2011

5

Faleminderit për vemendjen!

9Modelimi dhe animimi 3D UPPZ Semestri veror 2011Copyright 2011 A. Islamaj & Rr. Pllana