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

Bevezetés a számítógépi

Hasonló előadás


Az előadások a következő témára: "Bevezetés a számítógépi"— Előadás másolata:

1 Bevezetés a számítógépi
Moka Bevezetés a számítógépi grafikába

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

3 Moka 1.1 Történeti áttekintés
1950. 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. 1964. 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.)

4 Moka 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. 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.

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

6 Moka 1.2 Grafikus eszközök 1.2.1.1 CRT monitorok
A monitorok közül a katódsugárcsöves terjedt el először. 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.

7 Moka 1.2 Grafikus eszközök 1.2.1.1 CRT monitorok
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.

8 Moka 1.2 Grafikus eszközök 1.2.1.1 CRT monitorok jellemzői
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.

9 Moka 1.2 Grafikus eszközök 1.2.1.2 LCD monitorok működése
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). 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.

10 Moka 1.2 Grafikus eszközök 1.2.1.2 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. 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.

11 Moka 1.2 Grafikus eszközök 1.2.1.3 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.

12 Moka 1.2 Grafikus eszközök 1.2.1.4 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 :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.

13 Moka 1.2 Grafikus eszközök 1.2.1.4 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.

14 Moka 1.2 Grafikus eszközök 1.2.2 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.

15 Moka 1.2 Grafikus eszközök 1.2.3 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.

16 Moka 1.2 Grafikus eszközök 1.2.3.1 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.

17 Moka 1.2 Grafikus eszközök
Lézer nyomtató statikus elektromosság 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

18 Moka 1.2 Grafikus eszközök 1.2.3.1 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. Speciális papír Normál papír

19 Moka 1.2 Grafikus eszközök 1.2.3.1 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.

20 Moka 1.2 Grafikus eszközök 1.2.3.1 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.

21 Moka 1.2 Grafikus eszközök 1.2.4. 3D 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.

22 Moka 1.2 Grafikus eszközök 1.2.5. 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.

23 Moka 2. Grafikai szabványok 2.1 Legfontosabb grafikus 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).

24 Moka 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

25 Moka 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. Az SRGP legfontosabb alkotóelemei: 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

26 Moka 2. Grafikai szabványok 2.2 Rastergrafikus szabvány
3. ATTRIBÚTUMOK színek: Kitöltések: Tinta & Papír Tinta 0 Black 8 DarkGray 1 Blue 9 LightBlue 2 Green 10 LightGreen 3 Cyan 11 LightCyan 4 Red 12 LightRed 5 Magenta 13 LightMagenta 6 Brown 14 Yellow 7 LightGray 15 White

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

28 Moka 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, IN LT; 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;

29 Moka 2. Grafikai szabványok 2.3.1 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.

30 Moka 2. Grafikai szabványok
2.3.1 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.).

31 Moka 2. Grafikai szabványok 2.3.2 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.

32 Moka 2. Grafikai szabványok 2.3.2 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 A CSS lehetővé teszi a primitívek, tárgymodellek és struktúrák adatbázisszerű feldolgozását.

33 Moka 2. Grafikai szabványok 2.3.2 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

34 Moka 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

35 Moka 2. Alapvető rasztergrafikai algoritmusok 2.1 A szakasz rajzolása
Szimmetrikus DDA Az egyenes r(t) = r0 + 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. 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.

36 Moka 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 P1(x1, y1) és P2(x2, y2). 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.

37 Moka 2. Alapvető rasztergrafikai algoritmusok Midpoint algoritmus
Legyen az éppen megjelenített pont P(xp, yp), 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.

38 Moka F(x,y) = (x - u)2 + (y - v)2 - r2 = 0
2. Alapvető rasztergrafikai algoritmusok 2.2 Kör rajzolása 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. Ha rögzítünk egy [x, y] koordináta-rendszert, akkor az origó középpontú, r sugarú kör egyenlete: x2 + y2 = r2. Ebből pedig könnyen levezethető az (u, v) középpontú, r sugarú kör egyenlete: (x-u)2 + (y-v)2= r2. Átrendezve: F(x,y) = (x - u)2 + (y - v)2 - r2 = 0 Hol van ? F(x1,y1)<0 F(x1,y1)<0

39 Moka 2. Alapvető rasztergrafikai algoritmusok Nyolcas szimmetria elve
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. 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). 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.

40 Moka (xp + 1, yp), vagy az (xp + 1, yp - 1)
2. Alapvető rasztergrafikai algoritmusok Midpoint algoritmus alkalmazása körre Az algoritmus origó középpontú kört feltételez, és csak a kitüntetett nyol-cad körív pontjait határozza meg. Legyen az aktuális kivilágított pixel a P(xp, yp), hogyan tovább? A következő pixelt két pont (E, SE) közül kell kiválasztani. (xp + 1, yp), vagy az (xp + 1, yp - 1) 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.

41 Moka 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!

42 Moka 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 1001 1000 1010 0001 0000 0010 0101 0100 0110

43 Moka 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.

44 Moka 2. Alapvető rasztergrafikai algoritmusok - kitöltés 2.4.1 Színinformáción alapuló eljárások Él flag módszer 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ó.

45 Moka 2. Alapvető rasztergrafikai algoritmusok - kitöltés 2.4.2 Csúcsaival adott poligon kitöltése Poligon-fillező módszer 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

46 Moka 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 Midlepoint szerinti szélső pixelek Fiiezés szerinti szélső pixelek

47 Moka 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.

48 Moka 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

49 Moka Transzformációk r r’

50 Moka r r’ 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) r r’ 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ó.

51 Moka Koordináta-transzformáció: Pont-transzformáció:
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.)

52 Moka r r’ 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) r r’ 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ó.

53 Moka Eltolás Elforgatás 3. Transzformációk 3.1 2D-és transzformációk
A pont új koordinátái egy eltolási vek- torral kerülnek odébb: 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! A’ A β

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

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

56 Moka Tükrözés 3. Transzformációk 3.1 2D-és transzformációk
1. Koordináta tengely körül: x’ = -1·x és y’ = sy· y (az y tengely körül) . 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’

57 Moka 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. 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. 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. E v u

58 Moka 3. Transzformációk 3.2 Window to viewport transzformáció lépései:
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! xmax,ymax y y xmin,ymin x x Window

59 Moka 3. Transzformációk 3.2 Window to viewport transzformáció lépései:
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. v v x’max,y’max x’min,y’min u u Itt áttérünk az u,v síkra,majd skálázunk! Visszatolás >Viewport,

60 Moka 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

61 Moka 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?

62 Moka 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?

63 Moka 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ó.)

64 Moka x(t) = a3t3 + a2t2 + a1t + a0 Az egyenlet komponensekben:
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) = a3t3 + a2t2 + a1t + a0 y(t) = b3t3 + b2t2 + b2t + b0 z(t) = c3t3 + c2t2 + c1t + c0 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.

65 Moka 4. Paraméteres görbék 4.1 Interpolációs görbék
A térbeli görbék közül azok kiválasztása, melyek a tér előre megadott P1, P2, P3…… PN 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: találhatóak olyan t1, t2, t3… paraméterértékek, hogy a pon-tokba mutató vektorok megha-tározhatók a következőkkel r0=r(t0), r1=r(t0),…. rn=r(tn). A számítógép ezen paramétereket határozza meg és rögzíti le!

66 Moka 4. Paraméteres görbék 4.2 Approximációs görbék
A térbeli görbék közül azok kiválasztása, melyek a tér előre megadott P1, P2, P3…… PN pontjain nem haladnak át, hanem a kontrollpontok valamilyen módon hatnak a görbe alakjára.: 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!

67 Moka 4. Paraméteres görbék 4.3 Matematikai feltételek-1
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. Azaz egy konkrét t0 értékhez egy és csak egy r0 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

68 Moka 4. Paraméteres görbék Matematikai feltételek -2
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. 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.

69 Moka 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. Hány részből lett összerakva a görbe? Mi lehet a matematikai feltétele az összekapcsolódásnak? Van több? csomópont kontroll pont

70 Moka

71 Moka

72 Moka


Letölteni ppt "Bevezetés a számítógépi"

Hasonló előadás


Google Hirdetések