tanszek:oktatas:muszaki_informatika:transzformacio
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tanszek:oktatas:muszaki_informatika:transzformacio [2024/03/16 21:17] – superuser | tanszek:oktatas:muszaki_informatika:transzformacio [2024/03/26 19:11] (current) – [A forgatási mátrixok] knehez | ||
|---|---|---|---|
| Line 152: | Line 152: | ||
| \end{array} | \end{array} | ||
| \right]$$ | \right]$$ | ||
| - | {{: | ||
| + | **Példa:** | ||
| + | |||
| + | Tegyük fel, hogy szeretnénk 90 fokkal az óramutató járásával megegyezően elforgatni egy pontot (például $P(2,3)$) az $(1,1)$ pont körül. Ehhez az előbb leírt transzformációs mátrixokat fogjuk használni. Az egyszerűség kedvéért a példában szereplő értékeket közvetlenül beillesztjük a mátrixokba. | ||
| + | |||
| + | **Előkészítés eltolással** hogy a forgatási középpont $(-1, -1)$ legyen, azaz eltoljuk a pontot úgy, hogy a forgatási középpont az origóba kerüljön: | ||
| + | |||
| + | $$ | ||
| + | T_{eltolás} = \left[ \begin{array}{ccc} 1 & 0 & -1 \\ 0 & 1 & -1 \\ 0 & 0 & 1 \end{array} \right] | ||
| + | $$ | ||
| + | |||
| + | **90 fokos forgatás** ($T_{forgatás}$), | ||
| + | |||
| + | $$ | ||
| + | T_{forgatás} = \left[ \begin{array}{ccc} 0 & 1 & 0 \\ -1 & 0 & 0 \\ 0 & 0 & 1 \end{array} \right] | ||
| + | $$ | ||
| + | |||
| + | **Visszatolás** ($T_{visszatolás}$), | ||
| + | |||
| + | $$ | ||
| + | T_{visszatolás} = \left[ \begin{array}{ccc} 1 & 0 & 1 \\ 0 & 1 & 1 \\ 0 & 0 & 1 \end{array} \right] | ||
| + | $$ | ||
| + | |||
| + | A teljes transzformációs mátrix ($T_{teljes}$) kiszámítása: | ||
| + | |||
| + | $$ | ||
| + | T_{teljes} = T_{visszatolás} * T_{forgatás} * T_{eltolás} | ||
| + | $$ | ||
| + | |||
| + | A számítás eredménye: | ||
| + | |||
| + | $$ | ||
| + | T_{teljes} = \left[ \begin{array}{ccc} 0 & 1 & 0 \\ -1 & 0 & 2 \\ 0 & 0 & 1 \end{array} \right] | ||
| + | $$ | ||
| + | |||
| + | Most alkalmazzuk ezt a mátrixot a $P(2,3)$ pontra. A $P$ pontot kiterjesztjük egy homogén koordinátájú ponttá, így $P(2,3,1)$ lesz: | ||
| + | |||
| + | $$ | ||
| + | \left[ \begin{array}{ccc} 0 & 1 & 0 \\ -1 & 0 & 2 \\ 0 & 0 & 1 \end{array} \right] * \left[ \begin{array}{c} 2 \\ 3 \\ 1 \end{array} \right] = \left[ \begin{array}{c} 3 \\ -2 + 2 \\ 1 \end{array} \right] = \left[ \begin{array}{c} 3 \\ 0 \\ 1 \end{array} \right] | ||
| + | $$ | ||
| + | |||
| + | Tehát, az eredeti $P(2,3)$ pont 90 fokkal való elforgatása az $(1,1)$ pont körül az új $(3,0)$ pontba transzformálja azt. | ||
| + | |||
| + | ===== A forgatási mátrixok ===== | ||
| + | |||
| + | A 3D-s forgatásokat forgatási mátrixokkal írhatjuk le. Ezek a mátrixok mutatják, hogyan változik egy pont koordinátája a forgatás során. | ||
| + | |||
| + | ==== X tengely körüli forgatás ==== | ||
| + | |||
| + | A következő képlet az X tengely körüli forgatási mátrixot mutatja, ahol \( \theta \) a forgatás szöge: (a forgatás iránya az óramutató járásával ellentétes) | ||
| + | |||
| + | $$ | ||
| + | R_x(\theta) = \begin{pmatrix} | ||
| + | 1 & 0 & 0 \\ | ||
| + | 0 & \cos(\theta) & -\sin(\theta) \\ | ||
| + | 0 & \sin(\theta) & \cos(\theta) | ||
| + | \end{pmatrix} | ||
| + | $$ | ||
| + | |||
| + | ==== Y tengely körüli forgatás ==== | ||
| + | |||
| + | A Y tengely körüli forgatás esetén a forgatási mátrix: | ||
| + | |||
| + | $$ | ||
| + | R_y(\theta) = \begin{pmatrix} | ||
| + | \cos(\theta) & 0 & \sin(\theta) \\ | ||
| + | 0 & 1 & 0 \\ | ||
| + | -\sin(\theta) & 0 & \cos(\theta) | ||
| + | \end{pmatrix} | ||
| + | $$ | ||
| + | |||
| + | ==== Z tengely körüli forgatás ==== | ||
| + | |||
| + | Végül a Z tengely körüli forgatás mátrixa: | ||
| + | |||
| + | $$ | ||
| + | R_z(\theta) = \begin{pmatrix} | ||
| + | \cos(\theta) & -\sin(\theta) & 0 \\ | ||
| + | \sin(\theta) & \cos(\theta) & 0 \\ | ||
| + | 0 & 0 & 1 | ||
| + | \end{pmatrix} | ||
| + | $$ | ||
tanszek/oktatas/muszaki_informatika/transzformacio.1710623878.txt.gz · Last modified: 2024/03/16 21:17 by superuser
