2D képszintézis Szirmay-Kalos László.

Slides:



Advertisements
Hasonló előadás
Koordináta transzformációk 2
Advertisements

L ÁTHATÓSÁG MEGHATÁROZÁSA tavaszi félév.
Számítógép grafika.
Grafika. 2 Mértékek és koordináta rendszer Használjuk a RGB és QBColor függvényeket a színekhez Grafika létrehozása Load/change picture futási időben.
 Árnyalási egyenlet  Saját emisszió  Adott irányú visszaverődés.
Koordináta transzformációk
Koordináta transzformációk
Geometriai Transzformációk
2D grafikus rendszerek Szirmay-Kalos László. 2D grafikus editor: GUI, use-case, dinamikus modell L L L R LD LU MouseLDown első pont MouseLDown második...
Geometriai transzformációk
Inkrementális 3D képszintézis
GPU Szirmay-Kalos László.
Geometriai modellezés
2D grafikus rendszerek Szirmay-Kalos László.
Sugárkövetés: ray-casting, ray-tracing
Animáció Szirmay-Kalos László. Animáció = időfüggés T1(t)T1(t) T2(t)T2(t) TV(t)TV(t) Transzformációk alak szín megjelenítési attribútumok, stb.
Inkrementális 3D képszintézis Szirmay-Kalos László.
2D képszintézis Szirmay-Kalos László. Számítógépes grafika feladata képszintézis Virtuális világ modell modellezés Metafórák: 2D rajzolás világ = sík.
Geometriai modellezés
Számítógépes grafika és képfeldolgozás
Számítógépes grafika Szirmay-Kalos László
Sugárkövetés: ray-casting, ray-tracing Szirmay-Kalos László.
Számítógépes grafika Szirmay-Kalos László
3D képszintézis fizikai alapmodellje
Virtuális világ tárolása Szirmay-Kalos László. Belső világ tárolása l Geometria: pontok koordinátái l Topológia: élek-pontok; lapok-pontok;... l hierarchia:
Bevezetés.  A számítógépes grafika inkrementális képszintézis algoritmusának hardver realizációja  Teljesítménykövetelmények:  Animáció: néhány nsec.
Csoportosítás megadása: Δx – csoport szélesség
GRAFIKUS PRIMITÍVEK KITÖLTÉSE
Grafika a programban Készítette: Pető László. Bevezetés Valójában nem a célobjektumra rajzolunk, hanem annak festővászon területére (canvas). Csak olyan.
Lineáris programozás Modellalkotás Grafikus megoldás Feladattípusok
Számítógépes grafika, PPKE-ITK, Benedek Csaba, D képszintézis 4. előadás.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Geometriai modellezés 2. előadás.
Textúrák, világmodellek
Színek és megvilágítás
A számítógépes grafika céljai és feladatai
A számítógépes grafika céljai és feladatai
2D képszintézis és textúrák
2. Koordináta-rendszerek és transzformációk
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
AAO Csink László november.
Fraktálok Szirmay-Kalos László.
Pixel műveletek, képek Szirmay-Kalos László.
Grafikus alaphardver Szirmay-Kalos László. Jelfeldolgozási megközelítés modellezés modell képszintézis Digitális kép megjelenítés Analog Digitál Képinformáció.
Sugárkövetés: ray-casting, ray-tracing
Csipkézettség csökkentés (anti-aliasing) Szirmay-Kalos László.
Vektorok különbsége e-x = [ex-xx ey-xy ez-xz] e e-x x szempozíció
Sugárkövetés: ray-casting, ray-tracing
2D képszintézis Szirmay-Kalos László.
Analitikus geometria gyorstalpaló
Inkrementális 3D képszintézis Szirmay-Kalos László.
Számítógépes grafika Bevezetés
3D képszintézis fizikai alapmodellje Szirmay-Kalos László Science is either physics or stamp collecting. Rutherford.
Animáció Szirmay-Kalos László.
Transzformációk Szirmay-Kalos László. Transzformációk (x,y) (x’,y’) = T(x,y) l Tönkre tehetik az egyenletet l Korlátozzuk a transformációkat és az alakzatokat.
Inkrementális 3D képszintézis
Geometriai transzformációk
2.2. Az egyenes és a sík egyenlete
Differenciálszámítás
Fotorealisztikus képszintézis valós időben Szirmay-Kalos László, Csébfalvi Balázs BME IIT.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Színek és megvilágítás 5. előadás.
Bevezetés - Vonalak. Koordinátarendszer Windows form x y Az y lefelé nő Transzformáció a hagyományosra x Eltolás y Ellentett és eltolás.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Geometriai modellezés 2. előadás.
Informatikai eszközök a virtuális valóság szolgálatában Hapák József ELTE-IK X. Eötvös Konferencia.
Raszter-konverzió A képelem látványát alkotó képpontok előállítása Egyenes szakasz képpontjai Sokszög lemez kitöltése.
HASÁBOK FELOSZTÁSA.
4. A grafikus szerelőszalag - áttekintés 4.0. Bevezetés.
A számítógépes grafika alapjai, PPKE-ITK, Benedek Csaba, 2010 Tanagyag forrás © Szirmay-Kalos László, BME A számítógépes grafika céljai és feladatai 1.
Képek, képfeldolgozás Szirmay-Kalos László.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010
Vizualizáció és képszintézis
Előadás másolata:

2D képszintézis Szirmay-Kalos László

Számítógépes grafika modellezés Virtuális világ modell világ = sík képszintézis világ = sík Metafórák: 2D rajzolás

2D képszintézis

Vektorizáció r(t) r2 rn r1 [0,1]: t1= 0, t2 , ... , tn =1 r1 =r(0), r2 = r(t2), … , rn = r(1)

Modellezési transzformáció Sx 0 0 0 Sy 0 0 0 1 cos f sin f 0 -sin f cos f 0 0 0 1 1 0 0 0 1 0 px py 1 TM ux uy 0 vx vy 0 ox oy 1 (x, y) v u [x, y, 1] = [a, b, 1]  (a, b) o [0, 0, 1] [ox oy 1 ] [1, 0, 1] [ox+ux oy+uy 1 ] [0, 1, 1] [ox+vx oy+vy 1 ] (x, y) = o + au + bv

Ablak-nézet transzformáció ww ablak vw nézet (x, y) (X, Y) wh vh TV (vx,vy) (wx,wy) X = (x-wx) vw/ww + vx Y = (y-wy) vh/wh + vy vw/ww 0 0 0 vh/wh 0 vx-wxvw/ww vy-wyvh/wh 1 [X, Y, 1] = [x, y, 1]

Összetett transzformáció [X, Y, 1] = ([a, b, 1] TM ) TV [X, Y, 1] = [a, b, 1] (TM TV ) = [a, b, 1] TC TV nézeti transzformáció számítása for each object o TM előállítása TC = TM TV for each point of object o: transzformáció TC -vel endfor

Vágás Vektorizáció miatt: pont, szakasz, poligon Pontok vágása x > xmin x < xmax y > ymin y < ymax ymax Ablak: Belső konvex Külső konkáv Félsík: Külső konvex xmax ymin xmin

Szakasz vágás félsíkra xmax xi, yi x2, y2 x1, y1 x(t) = x1 + (x2 - x1)t, y(t) = y1 + (y2 - y1)t x = xmax Metszéspont: xmax= x1 + (x2 - x1)t  t = (xmax-x1)/(x2-x1) xi = xmax yi = y1 + (y2 - y1) (xmax-x1)/(x2-x1)

Cohen-Sutherland vágás Code = (y > ymax , x > xmax , y < ymin , x < xmin ) 1001 1000 1100 0001 0000 0100 0110 0011 0010

Sutherland-Hodgeman poligonvágás PolygonClip(p[n]  q[m]) m = 0; for( i=0; i < n; i++) { if (p[i] belső) { q[m++] = p[i]; if (p[i+1] külső) q[m++] = Intersect(p[i], p[i+1], vágóegyenes); } else { if (p[i+1] belső) } Első pontot még egyszer a tömb végére

Konkáv sokszögek vágása 6 5 3 2 4 1

Raszterizáció model Geometriai primitívek: 0.1-1 microsec / primitív transzformáció vágás raszterizáció Pixel műveletek Pixelek néhány nanosec / pixel rasztertár

Szakasz rajzolás Egyenes egyenlete: y = mx + b Egyeneshúzás for( x = x1; x <= x2; x++) { Y = m*x + b; y = Round( Y ); write( x, y ); } x1 x2

Inkrementális elv Y(X) kiszámítása Szakasz rajzolás: Y(X) = mX + b Y(X) = F( Y(X-1) ) = Y(X-1) + dY/dX Szakasz rajzolás: Y(X) = mX + b Y(X) = F( Y(X-1) ) = Y(X-1) + m Összeadás: fixpontos ábrázolás: y = Y 2T T: hiba < 1 a leghosszabb műveletsornál N 2-T < 1: T > log2 N round( y ): y+0.5-t csonkítjuk

DDA szakaszrajzolás DDADrawLine(x1, y1, x2, y2) { m = (y2 - y1)/(x2 - x1) y = y1 + 0.5 FOR X = x1 TO x2 { Y = round(y) trunc(y) WRITE(X, Y, color) y = y+m }

DDA szakaszrajzoló hardver X Y X számláló y regiszter 0.5 = .10000002 CLK S x1 y1 m

Terület elárasztás működése Belső pont = sötétkék Flood(x, y) { if (pixel[x][y] belső pont) { Write(x, y, color); Flood(x, y-1); Flood(x, y+1); Flood(x-1, y); Flood(x+1, y); } 2 2 1 2 mag 1 2 1 1 Flood 1 Write Flood(x,y-1); Flood(x,y+1); Flood(x-1,y); Flood(x+1,y); 2 Write Flood(x,y-1); Flood(x,y+1); Flood(x-1,y); Flood(x+1,y);

Területkitöltés Geometriai reprezentáció alapján Belső pixel p1,p2,...,pn csúcsok p1-p2, p2-p3,...,pn-p1 élek Belső pixel páratlanszor metszünk élt, ha végtelenből jövünk végtelen: vágás után a nézet széle

Területkitöltés Egyenesek = vízszintes pászták x1 x4 x3 x2 y p1 p3 Egyenesek = vízszintes pászták Amíg nincs metszéspont addig nincs változás (koherencia)

Kitöltés gyorsítása Vizsgálatok csak az aktív élekre Metszéspontszámítás inkrementális elv szerint Dx/Dy Dx/Dy y x(y) x(y+1) x(y+2)

Aktív él lista AET: aktív éltábla AET ymax Dx/Dy x next ymin=1024 ymax Dx/Dy x1 next ymax Dx/Dy x1 next ymin=1 ET: éltábla ymin=0