Matrika preslikave

Iz Wikipedije, proste enciklopedije
Skoči na: navigacija, iskanje

Matrika preslikave (tudi transformacijska matrika ali matrika prehoda) je matrika, ki predstavlja linearno transformacijo iz  R^n \, v  R^m \, tako, da velja

T( \vec x ) = \mathbf{A} \vec x

kjer je

Matrika pomeni prehod med dvema končno razsežnima vektorskima prostoroma. To je prehod iz baze z vektorji  \vec a_1, \cdots, \vec a_n \, v bazo  \vec b_1, \cdots, \vec b_n \, Včasih prikažejo transformacijsko matriko tudi z uporabo vrstičnega vektorja

Primeri v dvorazsežni grafiki[uredi | uredi kodo]

Najbolj pogoste geometrijske preslikave obdržijo stalno izhodišče. Med te preslikave prištevamo vrtenje, povečevanje in zmanjševanje, striženje, zrcaljenje in pravokotno projekcijo.

Vrtenje[uredi | uredi kodo]

Vrtenje za kot  \theta \, v smeri, ki je nasprotna gibanju urinih kazalcev (glede na izhodišče) zapišemo v matrični obliki kot


\begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} \cos \theta &  -\sin\theta \\ \sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}

Primer matrike za vrtenje 90 stopinj v nasprotni smeri urinih kazalcev:


\begin{bmatrix} 0 & -1 \\ 1 & 0 \end{bmatrix}

kjer je

  •  x' \, koordinata x po vrtenju
  •  x \, koordinata x pred vrtenjem
  •  \theta \, kot za katerega zavrtimo

Podobno je pri vrtenju v smeri gibanja urinih kazalcev


\begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} \cos \theta &  \sin\theta \\ -\sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}

Primer matrike za vrtenje 90 stopinj v smeri urinih kazalcev:


\begin{bmatrix} 0 & 1 \\ -1 & 0 \end{bmatrix}

Povečevanje in zmanjševanje[uredi | uredi kodo]

Povečevanje in zmanjševanje pomeni spremembo merila v katerem prikazujemo sliko. Če označimo z  x' \, in  y' \, nove koordinate, potem velja x' = s_x \cdot x in y' = s_y \cdot y

Matrika transformacije je


\begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} s_x & 0 \\ 0 & s_y \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}

Kadar velja tudi  s_x s_y = 1 \, predstavlja matrika stiskanje (pri tem se ohranja površina).

Nekateri povečevanje in zmanjševanje imenujejo tudi skaliranje [1].

Striženje[uredi | uredi kodo]

Strig je podoben nagibanju slike. Možni sta dve obliki: Strig vzdolž osi-y tako, da so nove koordinate  x' = x + ky \, in  y' = y \,. Pri tem je strižna matrika za stolpični vektor enaka


\begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} 1 & k \\ 0 & 1 \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}

Druga oblika pa je striženje vzdolž osi-x. Pri tem so nove koordinate   x' = x \, in  y' = y + kx \,. Matrika pa ima obliko


\begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ k & 1 \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}

Zrcaljenje[uredi | uredi kodo]

Če zrcalimo preko premice, ki teče preko izhodišča in ima smer vektorja  \vec l = (l_x, l_y) \,, potem zrcaljenje opisuje matrika


\mathbf{A} = \begin{bmatrix} 1 - 2 a^2  & - 2 a b & - 2 a c \\ - 2 a b  & 1 - 2 b^2 & - 2 b c  \\ - 2 a c & - 2 b c & 1 - 2c^2 \end{bmatrix}

Pravokotna projekcija[uredi | uredi kodo]

Če hočemo izvesti projekcijo vektorja na premico, ki teče skozi izhodišče, naj bo   \vec u = (u_x, u_y) \,, potem je transformacijska matrika


\mathbf{A} = \frac{1}{\lVert\vec{u}\rVert^2} \begin{bmatrix} u_x^2 & u_x u_y \\ u_x u_y & u_y^2 \end{bmatrix}

Opombe in sklici[uredi | uredi kodo]

Glej tudi[uredi | uredi kodo]

Zunanje povezave[uredi | uredi kodo]