„Számítógépes grafika és képfeldolgozás - Vizsga, 2015.01.12.” változatai közötti eltérés
| 43. sor: | 43. sor: | ||
<math>z_m = y_m \times x_m</math> | <math>z_m = y_m \times x_m</math> | ||
Ebbe a három vektorba kell forgatni a madarat. Az első cél, hogy az x | Ebbe a három vektorba kell forgatni a madarat. Az első cél, hogy az <math>x</math> tengelyt befordítsuk a <math>x_m</math> helyére ( 2 forgatás - <math>\varphi_z</math> és <math>\varphi_y</math>), utána az <math>y</math> tengelyt kell beforgatnunk a <math>y_m</math> helyére ( 1 forgatás - <math>\varphi_x</math> ). Belátható, hogy e két vektorral a <math>z</math> tengely is a helyére kerül | ||
* A <math>\varphi_z</math>-t hamar kinyerhetjük a <math>x_m</math> y | * A <math>\varphi_z</math>-t hamar kinyerhetjük a <math>x_m</math>-ben található <math>y</math> értékből: | ||
<math>\varphi_z'=\sin^{-1}\left( | <math>\varphi_z'=\sin^{-1}\left( | ||
\begin{bmatrix} | \begin{bmatrix} | ||
| 58. sor: | 58. sor: | ||
</math> | </math> | ||
* | * A forgatott <math>x'</math> tengely és az <math>x_m</math> által bezárt szög fogja alkotni a <math>\varphi_y</math>-t: | ||
<math>\varphi_y'=\cos^{-1}\left({ | <math>x'= | ||
\begin{bmatrix} | |||
\cos\varphi_z & -\sin\varphi_z & 0 \\ | |||
\sin\varphi_z & \cos\varphi_z & 0 \\ | |||
0 & 0 & 1 \\ | |||
\end{bmatrix} | |||
\begin{bmatrix} | |||
1 \\ | |||
0 \\ | |||
0 | |||
\end{bmatrix} | |||
= | |||
\begin{bmatrix} | |||
\cos\varphi_z \\ | |||
\sin\varphi_z \\ | |||
0 | |||
\end{bmatrix} | |||
</math> | |||
<math>\varphi_y'=\cos^{-1}\left({x' \over |x'|} \cdot {x_m \over |x_m|}\right)</math> | |||
<math>\varphi_y | <math>\varphi_y | ||
| 67. sor: | 86. sor: | ||
\end{cases} | \end{cases} | ||
</math> | </math> | ||
* | * Hasonlóan az előzőekhez az <math>y'</math> tengelyt ki kell számolni, és az <math>y_m</math>-el bezárt szög lesz a <math>\varphi_y</math>: | ||
<math>y'= | <math>y'= | ||
\begin{bmatrix} | \begin{bmatrix} | ||
| 86. sor: | 105. sor: | ||
\end{bmatrix} | \end{bmatrix} | ||
</math> | </math> | ||
<math>\varphi_x'=\cos^{-1}\left({y' \over |y'|} \cdot {y_m \over |y_m|}\right)</math> | <math>\varphi_x'=\cos^{-1}\left({y' \over |y'|} \cdot {y_m \over |y_m|}\right)</math> | ||
A lap 2015. január 12., 19:27-kori változata
1.Feladat
1.rész
- Feladat
Van egy madarunk, ami az origóból () sebességgel indul időpontban. időpontban pozícióba kerül. Adja meg az idő-parametrizáltan, milyen pozícióban, milyen sebességgel repült.
- Megjegyzés
Sajnos a feladatból (számomra) hiányzott egy paraméter ( értéke időpontban, vagy, hogy állandó-e a gyorsulás). Amennyiben valaki tud egy jobb, egyértelműbb megoldást, kérem, hogy ossza meg ebben a cikkben.
- Megoldás #1
Feltételezzük, hogy állandó ( csak -ként hivatkozok rá):
Ebből következően ha :
Tehát:
2. rész
Amennyiben a madár modelje alapesetben csőrével az +y, farkával a -y, hátával a +z és hasával a -z valamint a szárnyai az x tengelyek felé néz, milyen transzformációkat kell elvégeznünk, hogy megfelelő irányban és pozícióban legyen minden időpillanatban úgy, hogy forduláskor bedől (Frenet keret)
- Megjegyzés
Valószínűleg hibás (sorry). Érdemes átnézni a jegyzeteket (bmeanimr.ppt ~17. dia) és leellenőrizni. Ebből próbáltam én is összerakni. Amennyiben mégis helyes, akkor kéretik törölni ezt a két sort :)
(A kifejezés egyszerűen csak normalizálást jelent.)
- Megoldás
A jegyzetben az alábbi koordinálták vannak:
- Madár csőre: +z tengely
- Madár háta: +y tengely
- Madár szárnyai: x tengely
Ennek köszönhetően fel kell cserélni az egyenletekben a tengelyeket:
Ebbe a három vektorba kell forgatni a madarat. Az első cél, hogy az tengelyt befordítsuk a helyére ( 2 forgatás - és ), utána az tengelyt kell beforgatnunk a helyére ( 1 forgatás - ). Belátható, hogy e két vektorral a tengely is a helyére kerül
- A -t hamar kinyerhetjük a -ben található értékből:
- A forgatott tengely és az által bezárt szög fogja alkotni a -t:
- Hasonlóan az előzőekhez az tengelyt ki kell számolni, és az -el bezárt szög lesz a :
Ezekkel a szögekkel kell forgatni a madarat, és el kell mozdítani vektorral
2. feladat
Már nem emlékszem...
