Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Tartalom 1.Történeti áttekintés, grafikus hardver eszközök, szabványok 2.Alapvet ő rasztergrafikai algoritmusok 3.Tanszformációk 4.Paraméteres görbék.

Hasonló előadás


Az előadások a következő témára: "Tartalom 1.Történeti áttekintés, grafikus hardver eszközök, szabványok 2.Alapvet ő rasztergrafikai algoritmusok 3.Tanszformációk 4.Paraméteres görbék."— Előadás másolata:

1

2

3 Tartalom 1.Történeti áttekintés, grafikus hardver eszközök, szabványok 2.Alapvet ő rasztergrafikai algoritmusok 3.Tanszformációk 4.Paraméteres görbék 5.Tér síkra való leképezései 6.Testmodellezés 7.Láthatósági algoritmusok 8.Színelméleti alapok 9.Egyszer ű megvilágítás és árnyalási technikák

4 1.1 Történeti áttekintés  A Whirlwind Computer által kifejlesztett első valósidejű grafikus megjelenítő  IVAN E. SUTHERLAND 'Sketchpad' rajzoló rendszerének kifejlesztése. Az első „on line” működő grafikus rendszer.  GM DAC rendszer-az első grafikus konzol, grafikus parancsokat is értelmező rendszer. Fénytoll bevezetése.  1964 Az első CAD rendszer kifejlesztése az IBM és GM közös projektjében.  1965 Az egér bevezetése (fából és műanyagból készítette Douglas Engelbart.)

5 1.1 Történeti áttekintés  1973 Sharp (Japán) kifejlesztette az LCD (Liquid Crystal Display) monitort. 20 év kellett az elterjedéséhez.  1974 A Phillips cég első videó-telefonja.  1975 Az első fraktállal kapcsolatos Mandelbrot publikáció.  1977 A személy számítógépek korszakának kezdete. Megalakul a Microsoft cég.  1980 A PC-k elterjedése beépített raszter grafikával (IBM,APPLE) bit­tér képek (pixel vagy pel), desktop-felület, window manager elterjedése.

6 1.2 Grafikus hardver eszközök A monitorok fejlesztése 3 teljesen más működés elvet eredményezett Monitorok  Folyadékkristályos LCD monitor,  Katódsugárcsöves CRT monitor,  Plazma PDP monitor.

7 1.2 Grafikus eszközök A monitorok közül a katódsugárcsöves terjedt el először CRT monitorok Működése: Elektron ágyú által kilőtt elektronsu- gár soronként végigpásztázza be- lülről a képernyőt. A monitor belső felületén fénypor van, ami az elek- tron becsapódásakor felvillan. A pásztázás minimum másodpercen- ként 60-szor megtörténik, így a sze- münk összeköti a felvillanásokat, és képet látunk, amit a sötét és világos pontok rajzolnak ki.

8 A színes monitorban színkeverést alkalmaznak. Ez abból áll, hogy a piros, zöld, és kék színt egy pontban (legalábbis nagyon közel) hozzák létre, így a szemünk összekeveri ezeket. A keverékből lesz a monitor által megjelenített barna, vagy narancssárga szín. A színes CRT monitorok ehhez három elektronágyút, és háromféle fényport alkalmaznak. 1.2 Grafikus eszközök CRT monitorok

9  Képfelbontás: megadja a raszteres képen megjeleníthető pixelek számát. Pl.: 800*600, 1024*768, 1280*1024, stb.  Képátmérő: pl.: 14, 17, 21 inch, stb.  Kép-pontátmérő: a képernyőn beszínezhető pixelek nagyságát adja meg mm- ben.  Videosáv-szélesség: az elektronika állapotváltozásainak maximális számát adja meg másodpercenként, és így meghatározza a másodpercenként kirajzolható pixelek számát is.  Képfrissítési frekvencia :megadja a másodpercenként kirajzolt teljes képer- nyők számát.  Képkirajzolási üzemmód : interlace - noninterlace interlace: frissítési lépésenként a pixelsorok közül egyszerre csak a páros majd fentről kezdve a páratlan sorokat rajzolja ki. noninterlace: folyamatosan rajzolja ki a sorokat CRT monitorok jellemz ő i 1.2 Grafikus eszközök

10 Hátsó és első belső megvilágítású folyadék kristályos monitorok vannak. Minden képponthoz egy-egy (színesnél 3-3) folyadékkristály, és vezérlő tranzisztor tartozik. Ez a ráadott feszültségtől függően átengedi / lezárja a hátsó megvilágítás fényét (az első világítás esetén vissza- tükrözi / átengedi) LCD monitorok m ű ködése A pontok fixen adottak, az eredmény tökéletes rajzolat. A kép egy lapos műanyag- gal bevont felületen generálódik. A katódsu- gárcsöves monitorral ellentétben a kép nem állandóan frissül, hanem csak akkor, amikor az adott képpont változik.

11 1.2 Grafikus eszközök Teljesen pontosan a folyadékkristály mindig átengedi fényt, de különböző irányban polarizálja. Ha fény elé polárszűrőt teszünk, amely a két irány közül az egyik számára átlátszó csak akkor lesz ha, a vezérlés úgy fordítja el a kristályokat, hogy azok átengedjék a fényt LCD monitorok m ű ködése Az LCD monitor anyaga olyan szerves molekulákból, áll, amik nyugalmi állapotban kristályos szerkezetet alkotnak, ám elektromos vagy hőhatásra átrendeződ- nek, „folyékonnyá” válnak. Megváltozik a polaritásuk, átrendeződés = 90°-ban elfordulnak.

12 1.2 Grafikus eszközök PDP plazma monitorok m ű ködése 1964 óta létezik, de gyártási költségei miatt a CRT terjedt el. Az elv az, hogy minden képpontban egy-egy kis neoncső van, neon vagy xenon gázzal töltve, amely a ráadott feszültség hatására világít. Nagyon fontos,hogy itt nem felvillanásról van szó, hanem folyamatos működésről, amely- nek során a fényerő és a szín képpontonként állítható. Ennek köszönhetően a monitor képe rezgés- és villódzásmen- tes.

13 1.2 Grafikus eszközök LCD és PDP monitorok jellemz ő i Képarány: A kijelző oldalhosszúságainak aránya. 5:4-től 16:9-ig terjed. A legáltalánosabb a 4:3-hoz arány, szélesvásznú képernyőnél pedig a 16:9-hez. Ma már kaphatóak 16:10-es képaranyú monitorok is. Kontraszt: A részletgazdagságot jellemző tulajdonság (250–1000:1). A plazma képernyők akár a 10000:1 kontrasztot is produkálnak! Válaszidő: LCD paneles monitorok jellemzője, ezredmásodpercben (ms) mért időegység. Azt az időt jelöli, amennyi ahhoz kell, hogy egy képpont színe megváltozzon. A lassú válaszidő (12ms-nál hosszabb) akkor lehet zavaró, ha a monitoron gyors mozgásokat kell megjeleníteni. Ez is csak az LCD-nél kicsi, a CRT, vagy PDP monitorok olyan gyorsak, hogy ezt az adatot nem is használják.

14 1.2 Grafikus eszközök LCD és PDP monitorok jellemz ő i Fényerő: A monitor fényességét jellemzi. (Milyen fényes az elektronok felvillanása (CRT), milyen erős, fényes a háttérvilágítás (LCD).) (Például: 250 cd/m2 egy átlagos érték) Látószög: Az a paraméter, mely megadja, hogy a monitor milyen szögből látható. Általában két adattal jellemzik, az első a horizontális (széles- ség), második a vertikális (magasság) adat. Például: H:160°/ V:150° Ez az érték plazma monitornál a legjobb, és LCD-nél a legrosszabb.

15 1.2 Grafikus eszközök Rajzgépek A rajzgépek egy íróhegyet vezetnek a papíron. A rajz a toll két egymásra merőleges, X-Y irányú mozgásának eredőjeként jön létre. Lehetőség van toll választásra (szín). Síkplotter: a rajzlapot egy táblán rögzítik, mely fölött az írótoll két, egy másra merő- leges irányban mozoghat. Görgős rajzgép: A befogott rajzlap egy irányba mozgatható, a toll a másik rá merőleges irányban mozog.

16 1.2 Grafikus eszközök Pontraszteres nyomtató eszközök Ebben az esetben a karaktereket pontokból állítják elő, így az előállítás lehet oszlopos illetve mátrix elrendezésű. Oszlopos: (pl. 9 egymás alatt elhelyezkedő tű, így a megjelenítés oszloponként történik Mátrix: (pl. 5 x 7 tű, így a megjelenítés egyszerre, egylépésben történhet) Fontos alapfogalmak: DOT: 2 pont közötti távolság DPI: DOT / INCH: 1 inchen belül hány pontot képes megjeleníteni.

17 1.2 Grafikus eszközök Lézer nyomtató Kialakításuk a fénymásolók továbbfejlesztésével vált lehetővé. A lézer- nyomtatók a lézersugarat használják fel a nyomtatási kép előállítására. A nyomtató vezérlése elég bonyolult, ezért a nyomtatóban külön procesz- szor gondoskodik az összehangolt működésről. Műveletek: Felület tisztítása, feltöltés. Fotóvezető réteggel borított henger felületén először fényhatással elek- tromos töltéskép formájában alakítjuk ki a nyomtatandó ábrát. A hengert festékporral hozzuk érint- kezésbe, és azon a töltésképnek megfelelően megtapad a festék, a hengerről a festéket ráhengereljük a papírra és ott beégetjük.

18 A henger + töltésű Az optikai elven eltérített lézersugár kisüti az adott pontokat -> elektrosztatikus kép Minta után a henger egy finom festékporral szóródik be (toner által). Mivel a henger pozitív, a minta negatív töltésű, a festékpor csak a mintán marad meg A henger a mozgó papírral érintkezik, amely negatív töltésű, erősebben, mint a henger mintáinak negatív töltése Mivel a henger a papírral együtt mozog, a por a papírra tapad 1.2 Grafikus eszközök Lézer nyomtató statikus elektromosság

19 1.2 Grafikus eszközök Tintasugaras nyomtató m ű ködése A papírra tintasugarakat (cseppeket) lőnek ki, a nyomtatófej nem érintkezik a papírral. A tintacsepp szétfolyása miatt a nyomtatási kép kis mértékben függ a papír minősségétől is. Folyamatos nyomtató: A tartályból a tinta állandóan eljut a papírhenger elé, ahol a nyomtatási képtől függően vagy a papírra kerül, vagy az eltérítő elektróda segítségével a gyűjtő tartályba. Ebből a gyűjtőtartályból visszakerül a kiinduló tartályba. Ilyen esetben 5000 DOT/s érhető el. Előnye, hogy a tinta nem száradhat meg. Normál papír Speciális papír

20 1.2 Grafikus eszközök Bubble jet nyomtató Egy kis fűtőellenállás a közvetlen szomszédságában levő tintát felfor- ralja, az elpárolog, és az ellenállás mellett egy kis tintagőz buborék keletkezik. A buborék az előtte levő tintát a fúvókanyíláson keresztül hirtelen ki- nyomja. Az így keletkező tintacsepp a fúvókához nagyon közel fekvő papírra repül. Miután a cseppnyi tinta a fúvókán keresztül eltávozott, a fűtőellenállás azonnal megszünteti a hevítést, a tintagőz kicsapódik és a buborék összeesik. A keletkező vákuum a tintatartályból friss tintát szív be, és a folyamat ismétlődik. A tintasugaras nyomtatók feje rendszerint fúvókával van ellátva, a fúvóka átmérője 70 μm körüli, a kilövellt tintacsepp A buborékforralásos módszer hátránya, hogy a fej élettartama aránylag rövid. szükség van.

21 1.2 Grafikus eszközök Inkjet tintasugaras nyomtató A fejben, a fúvóka háta mögött egy kis piezókristály van elhelyezve. A kristály a rákapcsolt feszültségimpulzus hatására megnöveli térfogatát és az előtte levő kamrából a tinta egy részét a fúvókán keresztül hirtelen kipréseli. Piezólelektromos módszerrel a felbontás sokkal egyszerűbben növel- hető: a tintát nem kell felmelegíteni, ezért az koncentráltabb lehet, így a papíron körülhatároltabb és erősebb színű nyomot hagyhat. A piezoelektromos fej élettartama gyakorlatilag a nyomtatóéval azonos, tehát csak a tintatartályokat kell időnként cserélni. Minden tintasugaras nyomtatótípusnál a tintacsatornák elé szűrőt helyeznek el. Kikapcsolása előtt a nyomta- tófejet egy oldalsó pihenő helyzetbe vezérelik. Itt a fúvókák elé egy védősapka kerül, amely megakadályozza a por lerakódását és a tinta beszáradását.

22 1.2 Grafikus eszközök D nyomtató XXI.sz,nyomtatója gyors prototípus készítő gépek, amelyek tökéletes mását - egy valóságos térbeli tárgyat - képesek elkészíteni a számítógépen tervezett 3D-s modellnek órák alatt felépítik azt a modellt, ami máshol napokig tarthat képesek színes modellek előállítására is olyan számítógép-vezérelt berendezések, amelyek a rétegenként egymásra helyezett porréteget megfelelő kötőanyaggal rögzítve valós, térbeli testet állítanak elő. A 3D nyomtatás (3DP) a gyors prototípus- készítés (RP, 'rapid prototyping') legújabb eszköze.

23 1.2 Grafikus eszközök Egyéb grafikai eszközök Egér: egy a képernyőn pozícionálható kurzor mozgatására alkalmazható eszköz. Fényceruza: a képernyőn való mutogatásra használható eszköz. Scannar: képek digitalizálására alkalmas eszköz, amivel a vektorgrafikus, vagy rasztergrafikus állományokba rögzítjük a kép adatait.

24 2. Grafikai szabványok  3D Core Graphics System alacsony szintű, eszközfüggetlen grafikus rendszer (1977)  SRGP Simple Raster Graphics Package  GKS Graphical Kernel System -2D az első hivatalos grafikai szabvány (1985)  GKS 3D a korábbi GKS szabvány kiterjesztése 3D-re (1988)  PHIGS Programmer's Hierarchical Interactive Graphic System (1988)  PHIGS PLUS (ANSI/ISO 1992). 2.1 Legfontosabb grafikus szabványok

25 2. Grafikai szabványok 2.2 Rasztergrafika A raszteres grafika azt jelenti, hogy a kép sorokból (scanline) és azon belül oszlopokba rendezet képpontokból épül fel. Tehát úgy képzelhetjük el, hogy a képet egy rácsszerkezettel osztottuk fel apró elemi részekre. A raszteres grafika alapeleme a képpont. Végeredményként az adott képpont (pixel) pozícióját és színét kell tárolnunk az állo- mányokban. Raszteres állományok: BMP PCX TIFF TGA

26 2. Grafikai szabványok 2.2 Rasztergrafikus szabvány (SRGP) Legalapvetőbb raszter-grafikus funkciókat, megvalósító program- egységekre vonatkozó szabvány. 1. Raszter-grafikus primitívek, (vonalak, kör, ellipszis, sokszög és szöveg) A primitívek tulajdonképpen képelem generátorok, melyeket elhasználásukkor kell felparaméterezni (például kör esetén a középpont és sugár megadásával). 2. Konstansok és típusok Konstans például: Line-Style and Width Constants Text-Style Constants Típus például: LineSettingsType PaletteType PointType Az SRGP legfontosabb alkotóelemei:

27 2. Grafikai szabványok 2.2 Rastergrafikus szabvány 3. ATTRIBÚTUMOK színek: Kitöltések: Tinta & PapírTinta 0 Black 8 DarkGray 1 Blue 9 LightBlue 2 Green10 LightGreen 3 Cyan11 LightCyan 4 Red12 LightRed 5 Magenta13 LightMagenta 6 Brown14 Yellow 7 LightGray15 White

28 2. Grafikai szabványok 2.2 Rasztergrafikus szabvány (SRGP) 4. Vonal fajták és vastagságok Fajták: Vastagság: 0 SolidLn 1 NormWidth 1 DottedLn 3 ThickWidth 2 CenterLn 3 DashedLn 4 UserBitLn (User-defined line style)

29 2. Grafikai szabványok 2.3 Vektorgrafika A vektorgrafika azt jelenti, hogy a képet vonalak, alakzatok és görbék sorozataként írjuk le, figyelembe véve,hogy továbbra is lehetnek mintával vagy színnel kitöltött területek. A vektorgrafikát tartalmazó file úgy néz ki mintha egy program file-t vizsgálnánk. Angol parancsszavakat és adatokat tartalmaz ASCII formátumban, Ebből következően szabadon szerkeszthető valamilyen editorral. JPG, JPEG, INLT; VS32,1 PU ; VS32,2 PD ; VS32,3 SP1; VS32,4 LT; VS32,5 PU ; VS32,6 PD ; VS32,7 SP1; VS32,8 LT; WU0 PU ; PW0.350,1 PD ; PW0.350,2 SP1; PW0.350,3 LT; PW0.350,4 CI 350 PW0.350,5 SP1; PW0.350,6 LT; PW0.350,7 PU ; PW0.350,8 PD ; SP1 SP0;

30 2. Grafikai szabványok GKS és a GKS-3D: Az első nemzetközi grafikai szabvány a német kezdeményezés alapján kidolgozott grafikus magrendszer (Graphical Kernel system = GKS), mely a 2D-s vektorgrafikára vonatkozott. A 80-as évek végére a számítógépi teljesítőképesség robbanás szerűen megnőtt melyek eredményezték a GKS szabvány továbbfejlesztését. Így jött létre a GKS-3D szabvány, melyben a GKS-t 3D-és eljárásokkal és funkciókkal bővítették ki.

31 2. Grafikai szabványok GKS 3D Vektorgrafikus szabvány tartalma  színkezelés (színpaletta definiálása),  transzformációk (vetítés, 3D-s ablak definiálás stb.),  grafikus primitívek (sokszög, kitöltött terület, 2 és 3D-s szöveg stb.),  koordináta-rendszer, skálázás, rácsok,  objektumok definiálása (kör, téglatest, ellipszoid stb.),  térgörbék és felületek definiálása (kontúrvonalak, háromszög közelítésű felületek, függvénnyel megadott felület háromszög- közelítéssel stb.),  láthatósági eljárások (huzalvázas megjelenítés, árnyalt felületek, poligonok rendezése, fedettség szerint stb.).

32 2. Grafikai szabványok A PHIGS, PHIGS+ és a PEX A szabvány nevéből adódóan a PHIGS programozók hierarchikus, inter- aktív grafikus rendszere. A PHIGS szabvánnyal főként a tervezőszoft- verek egységesítését szerették volna elérni, a funkcionalitását tekintve döntően megegyezik a GKS-3D-vel. A PHIGS támogatja a vektorgrafikus objektumok közötti hierarchikus kapcsolatok felépítését, ezeket egy modell-adatbankban az ún. CSS-be (Central Structure Storage) a központi struktúra-tárolóba integrálja. Az adatbázis-szerkezet a szabványban úgy került megfogalmazásra, hogy a programok a modelltér műveleteket interaktív módon is képesek legyenek végrehajtani.

33 2. Grafikai szabványok A PHIGS, PHIGS+ és a PEX tartalma 1. A primitívek egyik csoportja geometriai, ide tartoznak a szokásos poligonok, poliéderek kitöltött felületek, stb. A raszteres primitívek mellett a különböző mennyiségi (matematikai, sta- tisztikai) primitíveket és a speciális szervezési primitíveket is (például egy úthálózat gráfja). A primitívekhez egyedi és csoporttulajdonságok is hozzárendelhetők (például színmodellek). 2. A primitívekből tárgymodelleket állíthatunk össze és ezeket struktúrákba szervezhetjük. 3. A CSS lehetővé teszi a primitívek, tárgymodellek és struktúrák adatbázisszerű feldolgozását.

34 2. Grafikai szabványok A PHIGS, PHIGS+ és a PEX tartalma 4. A CSS objektumaira a szokásos adatbázis-műveletek (visszakeresés, létesítés, törlés, csoportosítás) mellett végrehajthatjuk a vektorgrafikában szokásos transzformációkat is (skálázás, mozgatás, koordináta-rendszer választása stb.). 5. A modelltér jeleneteit különböző nézőpontokból ábrázolhatjuk, ehhez a szabvány biztosítja a szükséges 3D-2D-s vetítéseket és kivágást. 6. A megjelenítéshez a PHIGS ismeri a láthatósági és megvilágítási és árnyalási modelleket. 7. A felhasználóval való kapcsolattartás eszközeként alkalmazhatók a lokátor eszközök, a poligon rajzolás, a kijelölés, értékadás stb

35 2. Alapvető rasztergrafikai algoritmusok A modellezés során arra a kérdésre keressük a választ, hogy hogyan lehet folytonos geometriai alakzatokat képpontokkal közelíteni. Azokat az algoritmusokat, melyek erre megadják a választ, digitális differenciaelemző (DDA) algoritmusoknak nevezzük

36 2. Alapvető rasztergrafikai algoritmusok 2.1 A szakasz rajzolása Az egyenes r(t) = r 0 + tv skalár vektor el állításán alapszik A(x, y ) és B(x, y ) pontokból képezzük a Δx = x − x és Δy = y − y különbségeket. Meghatározzuk az ε =2−n értéket, ahol 2n−1 ≤ max( Δx, Δy ) < 2n és egy x és y regiszter tartalmát növeljük az εΔx és εΔy értékekkel. Az egész túlcsordulásoknál megjelenítjük a pontot. Szimmetrikus DDA Egyszerű DDA Ekkor az x vagy y irányban egyesével lépkedünk, azaz a εΔx =1vagy εΔy =1 Csak egy regisztert használunk, és egész túlcsordulás esetén lépünk a megfelelő irányba.

37 2. Alapvető rasztergrafikai algoritmusok 2.1 A szakasz rajzolása Midpoint algoritmus Az egyenes egyenlete a x + b y + c = 0 alakra hozható, ahol a és b egyszerre nem lehet nulla. Legyenek az egyenest meghatározó aktuális pontok a P 1 (x 1, y 1 ) és P 2 (x 2, y 2 ). Az algoritmus feltételezi, hogy a meredekség 0 és 1 között van, az egyenest balról jobbra haladva rajzoljuk ki, a kitöltött körök a megvilágított pixeleket jelentik.

38 2. Alapvető rasztergrafikai algoritmusok Midpoint algoritmus Legyen az éppen megjelenített pont P(x p, y p ), ekkor a következő megraj- zolandó raszterpont az E (East) és az NE (North East) pontok valame- lyike lehet. Közülük azt a pontot kell kigyújtani, amelyik közelebb van az elméleti egyeneshez. A választás a két rácspont között elhelyezkedő felező pont (M) segítsé- gével történik. Ha az egyenes az M pont felett halad el, akkor az NE pontot jelenítjük meg, különben pedig az E-t. Az M pont helyzetét analitikusan határozzuk meg.

39 2. Alapvető rasztergrafikai algoritmusok 2.2 Kör rajzolása Ha rögzítünk egy [x, y] koordináta-rendszert, akkor az origó középpontú, r sugarú kör egyenlete: x 2 + y 2 = r 2. Ebből pedig könnyen levezethető az (u, v) középpontú, r sugarú kör egyenlete: (x-u) 2 + (y-v) 2 = r 2. A kör azon pontok halmaza a síkban, amelyek egy adott, a síkra illeszked- nek a C ponttól egyenlő (r > 0) távolságra vannak. A C pontot a kör középpontjának, az r távolságot a kör sugarának nevezzük. Egy pontot a kör belső (illetve külső ) pontjának nevezünk, ha a pont távolsága a kör középpontjától kisebb (illetve nagyobb) a kör sugaránál. Átrendezve: F(x,y) = (x - u) 2 + (y - v) 2 - r 2 = 0 Hol van ? F(x1,y1)<0 F(x1,y1)<0

40 2. Alapvető rasztergrafikai algoritmusok Nyolcas szimmetria elve Ezért ha meghatározzuk a kör egy megfelelő nyolcadának pontjait, akkor tulajdonképpen a teljes kört is megha- tároztuk. ( gyorsítja a kör rajzolását). Ha egy (x, y) pont rajta van a körön, akkor könnyen meghatározhatunk három másik pontot, ami szintén rajta van a körön. Az eljárási feltétel az, hogy a kör közép- pontja az origóba essen. Ha egy nem origó középpontú kört akarunk rajzolni, akkor koordináta transzformációt kell alkalmazunk. Vagyis a kör pontjait úgy határozzuk meg, mintha a középpontja az origóban lenne, de kirajzolás előtt a pontokat az (u,v) vektorral eltoljuk, s így a kívánt helyzet kört kapjuk.

41 2. Alapvető rasztergrafikai algoritmusok Midpoint algoritmus alkalmazása körre Legyen az aktuális kivilágított pixel a P(x p, y p ), hogyan tovább? A következő pixelt két pont (E, SE) közül kell kiválasztani. (x p + 1, y p ), vagy az (x p + 1, y p - 1) Az algoritmus origó középpontú kört feltételez, és csak a kitüntetett nyol- cad körív pontjait határozza meg. Ha a körív az M pont felett halad el, akkor (a körív megválasztása miatt) az M a kör belső pontja, azaz F(M) < 0. Megmutatható, hogy ebben az esetben az E pont van közelebb a körhöz, így ekkor E-t vá- választjuk, különben az SE pont van közelebb a körhöz és SE-t választjuk.

42 2. Alapvető rasztergrafikai algoritmusok Midpoint algoritmus alkalmazása körre Az algoritmus által generált második nyolcad Tükrözéssel generált második nyolcad Majd további tükrözéssel elkészíthető a teljes kör!

43 2. Alapvető rasztergrafikai algoritmusok 2.3. Cohen Sutherland vágóalgoritmus Szakasz vágása téglalap tartományra ( ablakban való megjelenítésre). Ez a síkot 9 részre osztja. A középső a 9-dik a képernyő (ablak). Egy négyjegyű bináris kód minden ponthoz hozzárendelhető a sza- kasz pontjai és a képernyő egyeneseinek vizsgálata után! Algoritmus m ű ködése

44 2. Alapvető rasztergrafikai algoritmusok 2.4. Kitöltés (színezés) Egy kitöltendő zárt alakzat (poligon) kétféle módon lehet megadva:  az alakzatot határoló „görbe” –azaz szomszédos pixelek- sorozata ismert (a határoló vonalak),  a háttérszíntől eltérő határszín által, vagy a poligon csúcsainak koordinátái ismertek. Ezek alapján kell a belső pixeleket megtalálni, melyek között ki akarjuk színezni a területet, vagy a felszínt.

45 2. Alapvető rasztergrafikai algoritmusok - kitöltés Színinformáción alapuló eljárások Határszínnel (kék) adott zárt tartományon dolgozunk. vízszintes vonal mentén határszínű pixelhez érve állítunk egy flag-et. Ha igaz az értéke benn vagyunk a színezendő tartományban és színezünk, egyébként kinn és nem. A vízszintes élek esetén a flag-et nem állítjuk, ennek az esetnek a kezelése külön megoldandó. Él flag módszer

46 2. Alapvető rasztergrafikai algoritmusok - kitöltés Csúcsaival adott poligon kitöltése A poligon csúcsai meg vannak adva egész koordinátákkal. A feladat itt is a belső pixelek meghatározása. A poligon éleit pl. a middlepoint algoritmussal meg lehet határozni. Kérdés, hogy az egyenes rajzoló által generált pixelek közül melyeket tekintsük belső és melyeket külső pixeleknek. Erre az a megoldás, hogy megkülönböz- tetünk úgynevezett baloldali és jobb oldali éleket, aszerint hogy páratlanadik vagy párosadik metszéspontról van szó. Baloldali él esetén felfelé, jobb oldali él esetén lefelé kerekítünk.. Azaz kerekített midle-pointot alkalmazunk Poligon-fillező módszer

47 2. Alapvető rasztergrafikai algoritmusok - kitöltés Poligon-fillező módszer A legdélibb és legészakibb csúcsok között indított minden vízszintes mun- kavonalra az alábbi lépéseket tesszük: 1. A vonal metszéspontjainak meghatározása a poligon minden élével. 2. A metszéspontok rendezése x koordináta szerint. 3. Egy paritás bitet használva azon pixelek kitöltése a metszéspontok között, melyek a poligon belsejében fekszenek Fiiezés szerinti szélső pixelek Midlepoint szerinti szélső pixelek

48 2. Alapvető rasztergrafikai algoritmusok 2.4. Élsimítás (Anti-aliasing) ) A szakasz rajzoló alap algoritmusok a ferde egyeneseket töredezetten ábrázolják. Ez a módszer a ferde vonalak töredezettség mentes képének és a látványnak a javítására szolgál. A megtalált pixeleken túl különböző színintenzitással további pixelek vesznek részt az egyenes kirajzolásánál, így enyhíteni lehet az egyenes töredezettségét. Az elméleti szakaszra egy egy pixel szélességű téglalap tartományt fektetünk. Ha egy pixelnek van a téglalaptartománnyal közös része, akkor megfelelő szín- intezitással kirajzoljuk.

49 2. Alapvető rasztergrafikai algoritmusok 2.5. Super-sampling Az éleken elhelyezkedő pixeleket felbontjuk 4*4=16 darab további részre, melyeket subpixeleknek nevezünk. Ezek nem valódi képpontok. Ez azt jelenti, hogy a raszteres képpontokat elvileg egy nagyobb felbon- tásnak megfelelően számítjuk ki. Egy megjelenített pixel színe vagy szürkeségértéke ezt követően a hozzá- tartozó részpixelekhez rendelt értékek átlagaként kerül kiszámításra

50 r r’

51 3. Transzformációk A r (x, y, z) → r′ (x′, y′, z′) hozzárendelést 3D-s transzformációnak nevezzük, ahol 1. x′ = f (x, y, z) 2. y′ = f (x, y, z) 3. z′ = f (x, y, z) Az r vektornak megfelelő pontokat tárgypontoknak, az r' vektoroknak megfelelő pontokat pedig képpontoknak nevezzük. A számítógépes grafikában két olyan transzformációval találkozunk, ame- lyek matematikailag teljesen azonos formában írhatók le, ugyanakkor lé- nyegüket tekintve eltérőek. a koordináta transzformáció a pont-transzformáció. r r’

52 3. Transzformációk Koordináta-transzformáció: ekkor a tárgypont egy új koordinátarendszerre vonatkozó koordinátáit határozzuk meg, a régiek ismeretében. Ilyenkor tehát a vizsgált tárgy változatlan, csupán nézőpontunkat vál- toztatjuk meg. A grafikus objektum változatlan marad. Ilyenre például akkor van szükség, ha a nézőpontunkat változtatjuk 3D-ben (vázlat elforgatása). Pont-transzformáció: a grafikus objektum pontjaihoz új pontokat rendelünk hozzá. A hozzá- rendelés módjától függően a lehetnek egybevágósági, hasonlósági, affin vagy projektív leképzési transzformációk. (Leképzési tarnszformáció dimenzió vesztéssel jár.)

53 3. Transzformációk A r (x, y, z) → r′ (x′, y′, z′) hozzárendelést 3D-s transzformációnak nevezzük, ahol 1. x′ = f (x, y, z) 2. y′ = f (x, y, z) 3. z′ = f (x, y, z) Az r vektornak megfelelő pontokat tárgypontoknak, az r' vektoroknak megfelelő pontokat pedig képpontoknak nevezzük. A számítógépes grafikában két olyan transzformációval találkozunk, ame- lyek matematikailag teljesen azonos formában írhatók le, ugyanakkor lé- nyegüket tekintve eltérőek. a koordináta transzformáció a pont-transzformáció. r r’

54 3. Transzformációk 3.1 2D-és transzformációk Eltolás E A pont új koordinátái egy eltolási vek- torral kerülnek odébb: A A’A’ β Elforgatás Az alakzat pontjainak origó körü- elforgatása β szöggel. Az óramutatóval járásával megegye- ző a negatív irány!

55 3. Transzformációk 3.1 2D-és transzformációk Skálázás Általában nagyításnak mondható de: x = s x ·x és y = s y · y A skálázó vektor: S {s x,s y } Ha a transzfomációs műveletnél az -- s x = s y akkor az hasonlósági, -- s x <> s y akkor az affin transzformáció. s x =2 ; s y = 1,5

56 3. Transzformációk 3.1 2D-és transzformációk Skálázás Általában nagyításnak mondható de: x = s x ·x és y = s y · y A skálázó vektor: S {s x,s y } Ha a transzfomációs műveletnél az -- s x = s y akkor az hasonlósági, -- s x <> s y akkor az affin transzformáció. s x =2 ; s y = 1,5

57 3. Transzformációk 3.1 2D-és transzformációk Tükrözés 1. Koordináta tengely körül: x’ = -1·x és y’ = s y · y (az y tengely körül). 2.Tetszőleges egyenes körül: x’ = csúcspontx – 2 · tengely † egyenesx y’= csúcsponty – 2 · tengely † egyenesy A négyszög csúcsainak tükrözése után új pont koordináták: x’,y’

58 3. Transzformációk 3.2 Window to viewport transzformáció A valós világ leképezése a rajzolási területre. Például: elfogatjuk a 3D-és vázlatunkat, nagyítjuk a nézetet. E A kép generálásához fel kell vennünk egy ablakot az (u,v) síkban, melyen keresztül a 3D-s modellteret látjuk. A vágás előtt egy vetítés történik az (u,v) síkra. v u Mindazon objektumok, melyek ké- pe az (u,v) síkra vetítve az abla- kon kívül esik, a jelenet képén nem fog szerepelni. Azaz egy megjelenítendő sza- kasznak csak a képernyőn lévő részét kell kirajzolni.

59 3. Transzformációk 3.2 Window to viewport transzformáció lépései: y y x x 1. a világ koordináta-rendszerbeli rajzterület eltolása az origóba, (azért kell, mert a transzformációk egyszerűbben hajthatók végre! x min,y min x max,y max Window

60 3. Transzformációk 3.2 Window to viewport transzformáció lépései: v v u u 2. majd a két rajzterület megfelelő élei arányának megfelelően skálázás és visszatolás. Ami kilóg a window-ból, az a viewport-ból is ki fog, azaz vágni kell. x’ min,y’ min x’ max,y’ max Itt áttérünk az u,v síkra,majd skálázunk! Visszatolás >Viewport,

61 3. Transzformációk 3.3 Térbeli transzformáció (mérettartó) 1. Egybevágósági transzformáció  Térbeli eltolás  Forgatás β szöggel x,y,z tengely körül.  Tükrözés {x,y;…..} síkra 2. Hasonlósági transzformáció ( arányosságtartó)  Kicsítés origó középpontal  Nagyítás origó középpontal 3. Affin transzformáció  Skálázás ( tengelyek menti nyújtás)  Nyírás (adott egy sík, az ő normálisa, vele párhuzamos vektor, és egy szám

62 3. Transzformációk 3.4 Koordináta transzformáció A 3D-s euklideszi térben egy K koordináta-rendszerről egy K' koordi- nátarendszerre kívánunk áttérni. (Feltételezzük, hogy ortonormált Descartes-féle koordináta rendsze- rekről van szó.) Az i, j,k illetve i′, j′,k′ a két koordinátarendszer egység- vektorait, valamint d mutasson az eredeti rendszer kezdőpont- jából az új rendszer kezdőpont- jába. Hogyan tudjuk megvalósítani az áttérést? Hol merül fel ilyen eset a 3D programoknál?

63 3. Transzformációk 3.5 Centrális vetítés A 3D-s euklideszi térben egy K koordináta-rendszerről egy K' koordi- nátarendszerre kívánunk áttérni. (Feltételezzük, hogy ortonormált Descartes-féle koordináta rendsze- rekről van szó.) Az i, j,k illetve i′, j′,k′ a két koordinátarendszer egység- vektorait, valamint d mutasson az eredeti rendszer kezdőpont- jából az új rendszer kezdőpont- jába. Hogyan tudjuk megvalósítani az áttérést? Hol merül fel ilyen eset a 3D programoknál?

64 3. Transzformációk 3.4 Koordináta transzformáció A 3D-s euklideszi térben egy K koordináta-rendszerről egy K' koordi- nátarendszerre kívánunk áttérni. (Feltételezzük, hogy ortonormált Descartes-féle koordináta rendsze- rekről van szó.)

65 4. Paraméteres görbék A térbeli görbék modellezésének legfontosabb eszköze a paraméteres vektor függvény, mely alkalmazásával a síkbeli és térbeli görbéket ha- sonló módon írhatjuk le. Ez egy paraméteres skalár-vektor függvény megadását jelenti, ahol [a,b] a paramétertartomány : x(t) = a 3 t 3 + a 2 t 2 + a 1 t + a 0 y(t) = b 3 t 3 + b 2 t 2 + b 2 t + b 0 z(t) = c 3 t 3 + c 2 t 2 + c 1 t + c 0 Az egyenlet komponensekben: Az ismeretlenek száma 12 (vagy a síkban 8). Ehhez 4 geometriai adat tartozhat, ezek általában pontok, de lehetnek előírt érintők is.

66 4. Paraméteres görbék A térbeli görbék közül azok kiválasztása, melyek a tér előre megadott P 1, P 2, P 3 …… P N kontroll pontjain áthaladnak. A feladat, keressük azt az t→r(t) skalár-vektor függvényt, mely kielégíti a következő feltételt: 4.1 Interpolációs görbék találhatóak olyan t 1, t 2, t 3 … paraméterértékek, hogy a pon- tokba mutató vektorok megha- tározhatók a következőkkel r 0 =r(t 0 ), r 1 =r(t 0 ),…. r n =r(t n ). A számítógép ezen paramétereket határozza meg és rögzíti le!

67 4. Paraméteres görbék A térbeli görbék közül azok kiválasztása, melyek a tér előre megadott P 1, P 2, P 3 …… P N pontjain nem haladnak át, hanem a kontrollpontok valamilyen módon hatnak a görbe alakjára.: 4.2 Approximációs görbék A görbékhez megadhatók a ponto- kon kívül érintő egyenesek is. Hiszen az adott pontban a görbe első rendű deriváltja a görbe érintője. A számítógép ezen paramétereket határozza meg és rögzíti le!

68 4. Paraméteres görbék Az r(t) függvényről általában feltételezzük, ₪ hogy kölcsönösen egyértelmű és ₪ folytonos leképzés, ₪ hogy t-szerint folytonosan differenciál- ható és deriváltja nem nulla. 4.3 Matematikai feltételek-1 Azaz egy konkrét t 0 értékhez egy és csak egy r 0 vektort rendelhetünk hozzá. Az utóbbi szemléletesen azt jelenti, hogy a görbén nincsenek csúcsok, hegyes részek és az érintővek- tort a görbe bármely pontjában meg lehet húzni

69 4. Paraméteres görbék Ahhoz, hogy az interpolációs vagy approximációs eljárás a gyakor- latban is használható legyen, valamilyen módon szűkítenünk kell a szóba jöhető végtelen sok r = r(t) skalár-vektor függvény halmazát. Matematikai feltételek -2 Minél kisebb a polinom fokszáma, annál kevesebb művelettel számít- hatjuk ki a függvényértékeket, de túl alacsony fokszámú poligont nem választhatunk, mivel akkor a bonyolultabb görbéket és felületeket nem lehetne jól közelíteni. Síkbeli görbékhez a másodfokú koordinátafüggvényeket használunk. Térgörbék és felületek modellezésére a legalább har- madfokú polinomokat válaszjuk. Harmadfokú polinomokkal modellezhetők az önmetszés, a csúcspont vagy az inflexiós pont.

70 4. Paraméteres görbék Harmadfokú Bezier spline görbe Bezier görbe rendelkezik kontroll és csomó ponttal. A csomópontok (t) a görbe első és utolsó pontjai. csomópont kontroll pont Hány részből lett összerakva a görbe? Mi lehet a matematikai feltétele az összekapcsolódásnak? Van több?

71

72

73


Letölteni ppt "Tartalom 1.Történeti áttekintés, grafikus hardver eszközök, szabványok 2.Alapvet ő rasztergrafikai algoritmusok 3.Tanszformációk 4.Paraméteres görbék."

Hasonló előadás


Google Hirdetések