radék gázt, azaz lényegében gócként szolgáltak a gáz – egyébként csak sokkal sűrűbb köd esetén bekövetkező – kollapszusához. Így a modell „visszacsempészi” az összeállásos elméletbe az összeomlásos elmélet előnyeit. A javasolt mechanizmus akkor működőképes, ha a szoláris köd tömege legalább 0,08 MA volt. Az összeomlás gyorsasága folytán az időskála-probléma lényegesen enyhül, bár a Neptunusz képződéséhez még így is kényelmetlenül hosszú, legalább 3·107 évnyi idő kell. Miután a megfigyelések szerint a proplid csak néhány millió évig marad fenn [MT3], ez nehézséget jelent. Persze talán éppen ez magyarázza, hogy a gázóriásokkal (Jupiter, Szaturnusz) szemben a vízbolygóknak (Uránusz, Neptunusz) miért jóval kisebb a hidrogén-hélium légköre. Petrovay Kristóf
A számítógépes grafika VI. rész A vetítésről A vetítés a számítógépes grafika egyik legfontosabb transzformációja, hisz segítségével tudjuk megvalósítani a 3D valós világban lévő tárgyak szemléletes ábrázolását a 2D képernyőn vagy papíron. Ha a valós tárgyakat úgy ábrázolnánk a képernyőn, hogy egyszerűen elhagynánk a mélységet jelző z koordinátát, egy nagyon szegényes, nem szemléletes képet kapnánk, hisz a gömb nem kör, a kocka nem négyzet stb. Valamilyen úton-módon szemléltetni kell a z koordinátát is, ennek függvényében kell kiszámítani a másik kettőt. Vetítésre két módszer terjedt el. A képies ábrázolásmód az emberi látáshoz (és fényképezéshez) nagymértékben illeszkedik. Az ilyen ábra igen szemléletes, de torzításai jelentősek. A mérnöki ábrázolásmód a tárgy tényleges méreteiből, arányaiból lehetőleg sokat megtartó módszer. Az ilyen módon készült ábrák szükségképpen kevésbé szemléletesek. A perspektivikus torzulásokhoz szokott emberi szem sokszor éppen ezeket az ábrákat látja „torzaknak”. De mit is nevezünk vetítésnek? Vetítés: azok a dimenzióveszteséggel járó ponttranszformációk, amelyeknél bármelyik képpont és a neki megfelelő összes tárgypont egy egyenesen helyezkedik el. A fény egyenes vonalú terjedése folytán az optikában létrejövő leképezési folyamatok nagy része ilyen transzformációval egyenértékű – ez teszi magától értetődővé a vetítés szó használatát. Az összetartozó tárgy- és képpontokon áthaladó egyenest vetítősugárnak nevezzük. • Képfelület: az a felület, amire vetítünk. • Tárgypont: pont a valódi tárgyon. • Képpont: pont a képen (vetületen). • Vetület: a tárgynak a képfelületen létrejött képe.
54
2008-2009/2
Mivel a képernyő, a fénykép, a nyomtatópapír sima sík felületek, a számítógépes grafikában elsődlegesen a sík képfelületek érdekelnek – ezek a képsíkok. Az a szabály, amely szerint vetítősugarainkat kiválasztjuk, alapvetően befolyásolja a kialakuló kép jellegét. Ennek megfelelően sorolhatjuk csoportokba a következő néhány vetítésfajtát:
A centrális vetítés (perspektíva) • A vetítősugarak mindegyike áthalad egy vetítési középponton, a centrum-ponton. • A létrejövő kép igen közel áll az emberi szem, a fényképezőgép által alkototthoz. • A perspektivikus hatás elsősorban a tárgy és a centrum-pont távolságától függ. • Ha ez a távolság minden határon túl nő, a középpontos vetítés párhuzamos vetítésbe megy át. A perspektíva szó a latin per (teljesen, alaposan) és specto (lát, megnéz) szavak összetételeként született. A geometriához tartozó vonalperspektíván túl meg kell említeni a művészethez, esztétikához tartozó színperspektívát és légi perspektívát. A vonalperspektívát feltehetőleg már az ókori görögök ismerték (azonban festmények nem, csak leírások maradtak fenn). A kérdést tudományos alapossággal először a 2008-2009/2
55
reneszánsz korban kezdték vizsgálni. A XIV. században Giotto egy életen át kísérletezett a perspektívával. Giotto di Bondone (1267–1337) módszere az volt, hogy a szemlélő feltételezett szemmagasságában húzott egy, a kép alsó szélével párhuzamos egyenest, majd az e fölé eső, távolodó vonalakat lefelé, az egyenes alá esőket felfelé térítette el. Ügyelt a távolabbi alakok méretére, valamint a megfelelő színek használatára is. Eljárása nem volt matematikailag alátámasztva, ám próbálkozásai nagyban hozzájárultak a későbbi reneszánsz mesterek tudományos alapú ábrázolásának fejlődéséhez. Filippo Brunelleschi (1377–1446) kiterjedt geometriai ismeretekkel rendelkező művészként szükségesnek érezte, hogy pontos munkamódszert dolgozzon ki, amit esetleg társai is hasznosítani tudnak. A majdani kompozíció látószögének megfelelően kijelölt egy pontot a vásznon, ahová az összes, a kép síkjára merőleges vonal összefut. Az ábrázolt tárgyak és alakok az így megválasztott enyészponttól mért távolságuk alapján lesznek kisebbek vagy nagyobbak – megközelítőleg úgy, ahogy a valóságban látjuk őket. Leone Battista Alberti (1404–1472) vette először észre, hogy a kör perspektivikus képe egy ellipszis. Azt mondta, hogy kört úgy érdemes perspektivikusan ábrázolni, hogy azt először egy négyzethálós lapra rajzoljuk, majd a négyzethálót „elferdítve” megkeressük az eredeti körrel való metszéspontoknak megfelelő (transzformált) pontokat. Ő volt az, aki a festészetet is megpróbálta tudományosan definiálni: egy képzeletbeli, rögzített középpontú gúla metszete bizonyos távolságból, a fény meghatározott helyzete mellett, vonalak és színek által, művészi módon, adott felületen ábrázolva. Leonardo da Vinci (1452–1519) maga is folytatott geometriai tanulmányokat. Ezek során rájött, hogy az egy enyészponton alapuló perspektíva különböző méretűnek tünteti fel a szemlélőtől azonos, ám az enyészponttól eltérő távolságban levő alakokat. A hiba kiküszöbölésére megalkotta a természetes perspektívát, amelyben a rövidülés a nézőtől való távolság arányában történik. Megkülönböztetésül a vonalperspektívát mesterséges perspektívának nevezte el. Ajtósi Dürer (1471–1528) fizikai eszközt szerkesztett a centrális projekció tanulmányozására. Az eszköz, melyet két ember tudott működtetni egy asztalból, keretből, valamint a falon egy csigából állt (ez volt a centrumpont). A tárgy egy pontjából fonal vezet a csigán át, amelyet súly feszít ki. Ekkor a keretben lévő függőleges és vízszintes vonalzókat a fonalhoz tolja az egyik ember. A fonalat leengedik, a lapot, amelyet a másik ember tart, ráhajtják a keretre és megjelölik rajta az előbbi fonál „döféspontját”. Így tetszőleges számú pontot felvéve kialakul a tárgy perspektivikus képe.
56
2008-2009/2
A vonalperspektíva szabályai: • Két hasonló tárgy közül a közelebbit nagyobbnak látjuk. • Két egyforma tárgy közül távolabbinak látjuk azt, amelyik a képen magasabban áll. • Az összetartó vonalak távolodó párhuzamosoknak látszanak. • Ha két azonos tárgy egyike részben takarja a másikat, akkor a takaró tárgy közelebbinek látszik. • Ha apróbb, egyforma tárgyak tömeget alkotnak, akkor a távolabbiak kisebbnek és egymáshoz közelebb állónak látszanak. • Egymás mögötti tárgyak méretcsökkenése távlati hatást vált ki. A légi perspektívát Leonardo da Vinci alkotta meg. Szabálya, hogy a légkörnek köszönhetően a távoli tárgyak kéknek látszanak, mégpedig minél közelebb esnek a horizonthoz, annál kékebbek. Festői „szabály”, hogy ami ötször távolabb van a valóságban, a vásznon ötszörte kékebb kell, hogy legyen. A színperspektíva is Leonardo da Vinci alkotása. Szabálya, hogy az előtérben levő tárgyak világosabbak és melegebb színűek, a háttérben lévő tárgyak sötétebbek és hidegebb színűek, valamint az, hogy a kiegészítő színek használata perspektivikus hatást kelt. A perspektivikus ábrázolásmód nem mentes a hibáktól, ezek optikai csalódásokat okozhatnak. William Hogarth (1697–1764) valamint Maurits Cornelis Escher (1898– 1972) nagy előszeretettel alkalmazta a hamis perspektívát, s így a perspektivikus ábrázolás veszélyeire hívta fel a figyelmet. A hamis perspektíva szabályai: • Egy szürke tárgy fekete környezetben világosabbnak tűnik, mint fehérben. • Egyforma hosszúságú, egymásra merőleges vonalak közül a függőlegesek hoszszabbnak tűnnek, mint a vízszintes. • A fehéren izzó objektum nagyobbnak látszik, mint a valóságban. • Tiszta időben távolabbi tárgyak közelebbieknek látszanak, párás levegőben ez fordítva történik. • Egy objektum piros fénnyel fehér lapra vetett árnyéka zöldes színű (kiegészítő színek). • Felületesen nézve bizonyos ábrákat térbelinek látunk annak ellenére, hogy ilyen térbeli ábrák nem is léteznek. • Ha egy ábra sok olyan elemet tartalmaz, amelyek a perspektíva érzékeltetésére szolgálnak, akkor azt akkor is perspektivikusnak látjuk, ha nem az. Párhuzamos vetítések Párhuzamos vetítésről beszélünk, ha a vetítősugarak egymással párhuzamosak. Ha ezen kívül a vetítősugarak még merőlegesek is a képsíkra, a merőleges (ortogonális) vetítés, egyébként a ferde (klinogonális) vetítés elnevezést használjuk. Habár a vetítések pontosan leírhatók geometriai transzformációkkal, erre csak a XIX. században jöttek rá (Pohlke-tétele, 1860). Addig a mérnökök az ún. axonometriákat, vagyis a tengelyekre való felméréseket használták.
2008-2009/2
57
Az axonometria térbeli tárgyak szemléletes síkbeli ábrázolására szolgáló módszer. Az axonometria a latin axis (tengely) és metrum (mérték) szavakból ered. Az axonometriákat úgy lehet elérni, hogy a valós tárgyat megmérjük, a méreteket pedig felmérjük egy 2D képzeletbeli koordinátarendszer tengelyeire, vagy felhasználjuk a Monge-féle ábrázoló geometriát, amely a műszaki rajz alapja. Tulajdonképpen egy két képsíkos projekció (a tárgyat különböző szemszögekből több képsíkra vetítjük le, így teljes képet kapunk róla – a segítségével teljes mértékben a 2D rajz alapján rekonstruálni tudjuk a 3D tárgyat). Minden axonometrikus ábrázoláshoz meg kell adni egy térbeli derékszögű koordinátarendszer x, y és z tengelye képének irányát és az egyes irányokhoz tartozó qx, qy és qz rövidüléseket. Rövidülés az a szorzószám, amellyel az eredeti térbeli koordinátát megszorozva az az axonometrikus vetület megfelelő távolsága lesz. A gyakorlati axonometriák nem elfajulók, azaz egyik rövidülésük sem egyenlő nullával és a koordináta tengelyek különböző irányúak. Párhuzamos egyenesek az axonometriában is párhuzamosak maradnak. A kör képe ellipszis, a kör köré rajzolt négyzet az axonometriában paralelogramma lesz, oldalai az ellipszis érintői. Gyakorlati axonometriák: • Izometrikus (egyméretű) axonometria • Dimetrikus (kétméretű) axonometria • Kavalier (frontális) axonometria − Madártávlat (katonai axonometria) − Békatávlat Izometrikus axonometria A koordináta tengelyek egymással 120–120°-os szöget zárnak be. A rövidülések egyenlőek: qx = qy = qz = 1. Ezt az axonometriát igen egyszerű szerkeszteni, de nem nagyon képies. Kiterjedten használják térbeli csővezetékek rajzainak készítésénél. Ezekhez néha előnyomott 120°-os hálót tartalmazó rajzlapot használnak, melyen szabadkézi vázlatok is könnyen készíthetők. A kocka izometrikus képe:
58
2008-2009/2
Dimetrikus axonometria A z tengelyt megtartjuk függőlegesnek, a vízszintes tengelyirányokat pedig 1:8 és 7:8 arányú lejtéssel rajzoljuk meg. Így az x tengelyt 97°-ra, az y tengelyt pedig 131°30'-re rajzoljuk a függőleges z tengelytől. A rövidülések: qx = qz = 1, qy = 0,5. Ez az ábrázolás elégíti ki leginkább a képiesség követelményét.
Kavalier axonometria A z tengely függőleges helyzetű. Az x tengely a z tengelyre merőleges, és mindkét tengelyre a méreteket valódi nagyságban rajzoljuk. Az y tengelyt a vízszinteshez képest 135°-os lejtéssel rajzoljuk, és a méreteket 1:2 arányú rövidüléssel mérjük fel.
2008-2009/2
59
Neve onnan ered, hogy ezt használták a katonai objektumok lerajzolásánál. Kétféle képpen valósulhat meg: ha felülnézetből rajzoljuk le a tárgyat, akkor madártávlatról, ha alulnézetből, akkor békatávlatról beszélhetünk. A kétféle ábrázolásmódot keverni is lehet, sőt igen hasznos például gerendakötések ábrázolásakor. Békatávlat
Madártávlat
OpenGL Az OpenGL-ben párhuzamos és perspektivikus vetítést is specifikálhatunk. A vetítéseket úgy adjuk meg, hogy megadjuk a látótér nagyságát és alakját. Ami a látótéren belülre esik, az fog a képernyőn látszani. A void glOrtho(double left, double right, double bottom, double top, double near, double far ); eljárással a párhuzamos vetítés látóterét specifikálhatjuk. left és right: a baloldali és jobboldali függőleges vágósíkok koordinátái. A bottom és top: az alsó és felső vízszintes vágósíkok koordinátái. A near és far: a közeli és távoli vágósíkok távolsága a szemtől. A (left, bottom, -near) és a (right, top, -near) specifikálják a közeli vágósík pontjait, amelyek ráfeszülnek az ablak bal alsó és jobb felső sarkaira – feltételezve, hogy a szem a (0, 0, 0) pontban van; far adja meg a távoli vágósík távolságát a szemtől. A közeli vágósík ablakba eső részének bal alsó sarka: (left, bottom, -near), a jobb felső sarka: (right, top, -near). A távoli vágósík ablakba eső részének bal alsó sarka: (left, bottom, far), jobb felső sarka: (right, top, far). A void gluOrtho2D(double left, double right, double bottom, double top); eljárással specifikálhatjuk a vetítési mátrixot ha kétdimenziós objektumokat akarunk rajzolni. Ekkor a vágási téglalap egyszerűen a (left, bottom, right, top) koordinátákkal megadott téglalap. A glOrtho (gluOrtho2D) megszorozza az aktuális projekciómátrixot a specifikált mátrixszal és ez lesz az új projekciómátrix. Ennél a vetítésnél a látótér egy téglatest. Például a glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0) egy párhuzamos vetítést specifikál, ahol a közeli vágósík bal alsó sarkának koordinátái (0.0, 0.0, -1.0), jobb felső sarkának koordinátái (1.0, 1.0, 1.0); a távoli vágósík bal alsó sarkának koordinátái (0.0, 0.0, 1.0), jobb felső sarkának koordinátái (1.0, 1.0, 1.0). Azaz mind a közeli, mind a távoli vágósík 1.0 távolságra van a vetítési síktól. A void glFrustum(double left, double right, double bottom, double top, double znear, double zfar); eljárással a perspektív vetítés látóterét specifikálhatjuk. A left és right: a bal60
2008-2009/2
oldali és jobboldali függőleges vágósíkok koordinátái. A bottom és top: az alsó és felső vízszintes vágósíkok koordinátái. A znear és zfar: a közeli és távoli vágósíkok távolsága a szemtől. A (left, bottom,- znear) és (right, top,- znear) specifikálják a közeli vágósík pontjait, amelyek ráfeszülnek az ablak bal alsó és jobb felső sarkaira. A zfar adja meg a távoli vágósík távolságát a szemtől – itt is feltételezzük, hogy a szem a (0, 0, 0) pontban van. A glFrustum megszorozza az aktuális projekció mátrixot a specifikált mátrixszal és ez lesz az új projekció mátrix. Ennél a vetítésnél a látótér egy csonkagúla. Lehetőség van a perspektív vetítési mátrix egy szemléletesebb specifikációjára is a void gluPerspective(double fovy, double aspect, double near, double far); eljárás segítségével, amely szimmetrikus látóteret specifikál. A fovy adja meg a látótér szögét az x-z sík irányában, aspect a vágási téglalap szélességének és magasságának arányát, near és far pedig a vágósíkok távolságát. Például a glFrustum(0.0, 1.0, 0.0, 1.0, 1.0, 3.0) egy perspektivikus vetítést specifikál, ahol a közeli vágósík bal alsó sarkának koordinátái (0.0, 0.0, -1.0), jobb felső sarkának koordinátái (1.0, 1.0, -1.0); a távoli vágósík bal alsó sarkának koordinátái (0.0, 0.0, -3.0), jobb felső sarkának koordinátái (1.0, 1.0,- 3.0). Azaz a közeli vágósík 1.0 távolságra, a távoli vágósík pedig 3.0 távolságra van a szemtől. Kovács Lehel
tudod-e? Megnevezték a 2008-as év Nobel-díjas tudósait Hagyományokhoz híven október 6-án megnevezték a 2008-as évi orvosi és élettani Nobel-díj nyerteseit. Megosztva három tudós, az AIDS-et okozó HIV-vírus felfedezéséért és a humán papillóma vírus (HPV) méhnyakrákot okozó hatásának feltárásért érdemelték ki a tudományokban megszerezhető legmagasabb díjat:
Francoise Barré-Sinoussi 2008-2009/2
Luc Montagnier
Harald zur Hause 61