3
1 Računarska grafika predavanja doc.dr. Samir Lemeš [email protected] 14. Geometrijske transformacije Vektorska grafika Homogene koordinate 2D Primitivi 2D translacija 2D rotacija 2D skaliranje Inverzne transformacije Vektorska grafika U rasterskoj grafici slika je predstavljena mrežom piksela. Nedostaci: zahtijeva puno memorije, povećanjem slike gubi se kvalitet povećanjem slike gubi se kvalitet. Vektorska grafika Vektorska grafika sliku opisuje geometrijskim likovima: tačke, linije, krugovi, funkcije,... Položaj geometrijskih Položaj geometrijskih likova određuje se koordinatama u izabranom koordinatnom sistemu (2D: x,y ili r,θ; 3D: x,y,z ili r,θ,z). Homogene koordinate Uobičajene transformacije u računarskoj grafici: translacija, rotacija, skaliranje, projekcije, se lakše izvode ako se koriste homogene koordinate jer se onda te homogene koordinate, jer se onda te transformacije mogu implementirati u obliku operacija s matricama. Homogene koordinate je uveo Möbius 1827. Prednost je u tome što se sve tačke mogu prikazati konačnim brojevima (čak i ) Homogene koordinate Prikaz tačke parom brojeva (x,y) se zamjenjuje prikazom sa tri tačke (x,y,h) Skalarni proizvod homogene koordinate daje istu tačku:(2 3 5) = (4 6 10) daje istu tačku: (2,3,5) = (4,6,10) To znači da se ista tačka može predstaviti sa više različitih homogenih koordinata. Bar jedna homogena koordinata mora biti različita od nule; (0,0,0) nije dozvoljena h=0 daje tačke "u beskonačnosti"

RG 13 2D Geometrijske Transformacije

Embed Size (px)

Citation preview

Page 1: RG 13 2D Geometrijske Transformacije

1

Računarskagrafika

predavanjadoc.dr. Samir Lemeš[email protected]

14. Geometrijske transformacije

Vektorska grafika

Homogene koordinate

2D Primitivi

2D translacija

2D rotacija

2D skaliranje

Inverzne transformacije

Vektorska grafika

U rasterskoj grafici slika je predstavljena mrežom piksela.

Nedostaci: zahtijeva puno memorije, povećanjem slike gubi se kvalitetpovećanjem slike gubi se kvalitet.

Vektorska grafika

Vektorska grafika sliku opisuje geometrijskim likovima: tačke, linije, krugovi, funkcije,...

Položaj geometrijskih Položaj geometrijskih likova određuje se koordinatama u izabranom koordinatnom sistemu (2D: x,y ili r,θ; 3D: x,y,z ili r,θ,z).

Homogene koordinate

Uobičajene transformacije u računarskoj grafici: translacija, rotacija, skaliranje, projekcije, se lakše izvode ako se koriste homogene koordinate jer se onda tehomogene koordinate, jer se onda te transformacije mogu implementirati u obliku operacija s matricama.

Homogene koordinate je uveo Möbius 1827.

Prednost je u tome što se sve tačke mogu prikazati konačnim brojevima (čak i )

Homogene koordinate

Prikaz tačke parom brojeva (x,y) se zamjenjuje prikazom sa tri tačke (x,y,h)

Skalarni proizvod homogene koordinate daje istu tačku: (2 3 5) = (4 6 10)daje istu tačku: (2,3,5) = (4,6,10)

To znači da se ista tačka može predstaviti sa više različitih homogenih koordinata.

Bar jedna homogena koordinata mora biti različita od nule; (0,0,0) nije dozvoljena

h=0 daje tačke "u beskonačnosti"

Page 2: RG 13 2D Geometrijske Transformacije

2

2D Primitivi

2D tačka:

2D pravac:

1 2 3( , ) ( ', ', ) ( , , )V x y X x y h ili X x x x

1 2

3 3

x xx y

x x

2D pravac: implicitni oblik:

uvođenje homogene koordinate:

homogena jednačina:

1 2

3 3

0x x

a b cx x

1 2 3 0a x b x c x

0a x b y c

2D Primitivi

2D pravac: matrični

zapis:

1 2 3 1 2 3 0

a

X G a x b x c x x x x b

c

vektor normale:

vektor tangente:

dogovor:

n a b

t b a

0, " "

0,

0, " "

X je iznad pravca

X G X je na pravcu

X je ispod pravca

2D primitivi

Dvije tačke određuju pravac (vektorski proizvod)

1 1 1 1

2 2 2 2

( )

( )

X x y h

X x y h

i j k

1 2 1 1 1

2 2 2

1 2 2 1

1 2 2 1

1 2 2 1

T T

T

j

G X X x y h

x y h

b c b c x

i j k a c a c y X

a b a b h

Primjer

X1=(2 3 1), X2=(6 4 1)

i j k

1 2

1 2 3

2 3 1

6 4 1

3 4 1

2 6 4

8 18 10

4 10 4 10 0

T T

j

G X X

G i j k i j k

G x x x x y

2D translacija 2D translacija

y

x

y

x

Page 3: RG 13 2D Geometrijske Transformacije

3

2D rotacija 2D rotacija

y

x

2D skaliranje 2D skaliranje

y

x

y

x

x·sx

y·sy

Inverzne transformacije

Inverzna matrica translacije daje pomak u suprotnom smjeru

Inverzna matrica rotacije daje rotaciju u suprotnom smjeru

Inverzne transformacije

Inverzna matrica skaliranja odgovara inverznoj transformaciji;povećanjepovećanje odgovara smanjivanju