„A grafkerdes.doc feladatai” változatai közötti eltérés
Új oldal, tartalma: „{{GlobalTemplate|Infoalap|SzgGrafFeladatok}} Letöltés itt: [http://www.iit.bme.hu/~szirmay/grafika/grafkerdes.doc grafkerdes.doc] ''Megjegyzés: elkezdtem tömöre…” |
→Megoldás: törött link javítása |
||
| (Egy közbenső módosítás ugyanattól a felhasználótól nincs mutatva) | |||
| 25. sor: | 25. sor: | ||
---- | ---- | ||
====Megoldás==== | ====Megoldás==== | ||
<math> | <math> | ||
T = \underline{v} - (\underline{v}\cdot\underline{n})\cdot\underline{n} = \left[\begin{array}{cccc} | T = \underline{v} - (\underline{v}\cdot\underline{n})\cdot\underline{n} = \left[\begin{array}{cccc} | ||
1-a^2 & -a\cdot b & -a \cdot c & 0\\ | 1-a^2 & -a\cdot b & -a \cdot c & 0\\ | ||
| 33. sor: | 33. sor: | ||
\end{array} | \end{array} | ||
\right] | \right] | ||
</math> | |||
---- | ---- | ||
| 55. sor: | 55. sor: | ||
Most már csak ki kell találni a mátrix elemeit, hogy az egyenlet két oldala megegyezzen. | Most már csak ki kell találni a mátrix elemeit, hogy az egyenlet két oldala megegyezzen. | ||
<math> | <math> | ||
T = \left[\begin{array}{cccc} | T = \left[\begin{array}{cccc} | ||
1-\frac{a^2}{(a^2 + b^2 + c^2)} & \frac{-a\cdot b}{(a^2 + b^2 + c^2)} & \frac{-a \cdot c}{(a^2 + b^2 + c^2)} & 0\\ | 1-\frac{a^2}{(a^2 + b^2 + c^2)} & \frac{-a\cdot b}{(a^2 + b^2 + c^2)} & \frac{-a \cdot c}{(a^2 + b^2 + c^2)} & 0\\ | ||
| 63. sor: | 63. sor: | ||
\end{array} | \end{array} | ||
\right] | \right] | ||
</math> | |||
Ha valaki tudja, hogy esetleg miért nem jó ez a megoldás, akkor írja meg ide, thx. | Ha valaki tudja, hogy esetleg miért nem jó ez a megoldás, akkor írja meg ide, thx. | ||
| 153. sor: | 153. sor: | ||
<math> d = \frac{\left| (\underline{p_{1}} - \underline{q_{1}}) \cdot (\underline{v_{1}} \times \underline{v_{2}}) \right|}{\left| \underline{v_{1}} \times \underline{v_{2}} \right|} </math> | <math> d = \frac{\left| (\underline{p_{1}} - \underline{q_{1}}) \cdot (\underline{v_{1}} \times \underline{v_{2}}) \right|}{\left| \underline{v_{1}} \times \underline{v_{2}} \right|} </math> | ||
'''Egy kis magyarázat a fenti képlethez''': Két kitérő egyenes távolságán az azokat összekötő, mindkettőre merőleges normáltranszverzális szakasz hosszát értjük. A v1 × v2 vektoriális szorzat normáltranszverzális irányú, hiszen mindkét irányvektorra merőleges vektor, osztva a hosszával, egységvektor. Ennek és a két egyenes egy-egy pontjával meghatározott (P1, Q1) reprezentánsú (q1 - p1) vektornak a skaláris szorzata éppen a (q1 - p1) vektor normáltranszverzális irányra vett merőleges vetületének hosszát adja abszolútértékben. (forrás: http://zeus.nyf.hu/~szalonta/Trigkoord06.doc) | |||
<pre> | <pre> | ||
float distanceLineLine(float p1x, float p1y, float p1z, | float distanceLineLine(float p1x, float p1y, float p1z, | ||
| 204. sor: | 205. sor: | ||
} | } | ||
</pre> | </pre> | ||
Ez az abs feltétel biztos? Mert sztem ez bővebb a párhuzamosságnál, pl két merőleges egyenes is lehet ilyen. | Ez az abs feltétel biztos? Mert sztem ez bővebb a párhuzamosságnál, pl két merőleges egyenes is lehet ilyen. | ||
| 217. sor: | 214. sor: | ||
---- | ---- | ||
---- | ---- | ||
===10. feladat=== | ===10. feladat=== | ||
| 232. sor: | 228. sor: | ||
Sztem a mátrix így néz ki (nevezzük A-nak) : | Sztem a mátrix így néz ki (nevezzük A-nak) : | ||
<math> | <math> | ||
T = \left[\begin{array}{cccc} | T = \left[\begin{array}{cccc} | ||
a11 & a12 & a13 & 0\\ | a11 & a12 & a13 & 0\\ | ||
| 240. sor: | 236. sor: | ||
\end{array} | \end{array} | ||
\right] | \right] | ||
</math> | |||
Ez annyiban különbözik egy általánosan megszokott affin transzformációs mátrixtól, hogy az a44 eleme 2 és nem 1 (nevezzük 1-essel A'-nek). Ha meggondoljuk ez nem baj, mert annyi változást okoz A az A'-höz képest, hogy (x, y, z, 1) helyett (x, y, z, 2)-t kapunk, ami pont egy 1/2-szeres nagyítást jelent (hiszen ha leosztjuk a pont koordinátáit 2-vel, akkor ezt kapjuk : (x/2, y/2, z/2, 1), és az x, y és z helyen a Descartes-koordinátáknak megfelelő pontot kapjuk(ha a 4. koordináta (h) 1)). A könyvből vett idézetet ellenőriztem, valóban így szerepelt, és ez nem pontos megfogalmazás. | Ez annyiban különbözik egy általánosan megszokott affin transzformációs mátrixtól, hogy az a44 eleme 2 és nem 1 (nevezzük 1-essel A'-nek). Ha meggondoljuk ez nem baj, mert annyi változást okoz A az A'-höz képest, hogy (x, y, z, 1) helyett (x, y, z, 2)-t kapunk, ami pont egy 1/2-szeres nagyítást jelent (hiszen ha leosztjuk a pont koordinátáit 2-vel, akkor ezt kapjuk : (x/2, y/2, z/2, 1), és az x, y és z helyen a Descartes-koordinátáknak megfelelő pontot kapjuk(ha a 4. koordináta (h) 1)). A könyvből vett idézetet ellenőriztem, valóban így szerepelt, és ez nem pontos megfogalmazás. | ||
Szerintem a [0, 0, 0, 1] helyett [0, 0, 0, λ], λ ≠ 0 a helyes kifejezés. | Szerintem a [0, 0, 0, 1] helyett [0, 0, 0, λ], λ ≠ 0 a helyes kifejezés. | ||
| 254. sor: | 250. sor: | ||
====Megoldás==== | ====Megoldás==== | ||
<math> | <math>T = \left( | ||
\begin{array}{ccc} | \begin{array}{ccc} | ||
1 & 0 & 0 \\ | 1 & 0 & 0 \\ | ||
| 260. sor: | 256. sor: | ||
0 & 0 & 0 \\ | 0 & 0 & 0 \\ | ||
\end{array} | \end{array} | ||
\right) | \right)</math> | ||
=====Javítás:===== | =====Javítás:===== | ||
| 266. sor: | 262. sor: | ||
ax + by = 1 egyenletű egyenesre origó középpontú vetítés esetén a mátrix: | ax + by = 1 egyenletű egyenesre origó középpontú vetítés esetén a mátrix: | ||
<math> | <math>T = \left( | ||
\begin{array}{ccc} | \begin{array}{ccc} | ||
1 & 0 & a \\ | 1 & 0 & a \\ | ||
| 272. sor: | 268. sor: | ||
0 & 0 & 0 \\ | 0 & 0 & 0 \\ | ||
\end{array} | \end{array} | ||
\right) | \right)</math> | ||
Ehhez képest az ax + by + c = 0 egyenlet helyett írhatjuk azt, hogy ax + by = 1-c, és akkor az előzőhöz hasonló egyenletet kapunk. Rátolunk egy (1-c)-vel skálázást a mátrixra: ax és by összege ez esetben nem 1, hanem annak (1-c)-szerese. Az y=c egyenesre való vetítéshez hasonlóan ez itt egy (1-c)-vel való osztásként jelenik meg a mátrix harmadik oszlopában. Mivel nem az origó a középpont, ezért még el is kell tolni az egészet (xc, yc)-vel, így a keresett mátrix: | Ehhez képest az ax + by + c = 0 egyenlet helyett írhatjuk azt, hogy ax + by = 1-c, és akkor az előzőhöz hasonló egyenletet kapunk. Rátolunk egy (1-c)-vel skálázást a mátrixra: ax és by összege ez esetben nem 1, hanem annak (1-c)-szerese. Az y=c egyenesre való vetítéshez hasonlóan ez itt egy (1-c)-vel való osztásként jelenik meg a mátrix harmadik oszlopában. Mivel nem az origó a középpont, ezért még el is kell tolni az egészet (xc, yc)-vel, így a keresett mátrix: | ||
<math> | <math>T = \left( | ||
\begin{array}{ccc} | \begin{array}{ccc} | ||
1-c & 0 & a \\ | 1-c & 0 & a \\ | ||
| 282. sor: | 278. sor: | ||
xc & yc & 0 \\ | xc & yc & 0 \\ | ||
\end{array} | \end{array} | ||
\right) | \right)</math> = <math>T = \left( | ||
\begin{array}{ccc} | \begin{array}{ccc} | ||
1 & 0 & \frac{a}{1-c} \\ | 1 & 0 & \frac{a}{1-c} \\ | ||
| 288. sor: | 284. sor: | ||
xc & yc & 0 \\ | xc & yc & 0 \\ | ||
\end{array} | \end{array} | ||
\right) | \right)</math> | ||
[[GurmaiGergely|Gergő]] -- 2007.11.29. | [[GurmaiGergely|Gergő]] -- 2007.11.29. | ||
| 297. sor: | 293. sor: | ||
Tekintsük a következő homogén lineáris transzformációs mátrixot (a transzformálandó pontot a mátrix bal oldalára kell írni): | Tekintsük a következő homogén lineáris transzformációs mátrixot (a transzformálandó pontot a mátrix bal oldalára kell írni): | ||
<math> | <math>\left( | ||
\begin{array}{ccc} | \begin{array}{ccc} | ||
1 & 0 & 1 \\ | 1 & 0 & 1 \\ | ||
| 303. sor: | 299. sor: | ||
0 & 0 & 0 \\ | 0 & 0 & 0 \\ | ||
\end{array} | \end{array} | ||
\right) | \right)</math> | ||