Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pomoc oko matrica!

[es] :: 3D programiranje :: Pomoc oko matrica!

[ Pregleda: 3015 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Nemanja_666
Nemanja Tatic
Gradiska

Član broj: 116292
Poruke: 221
217.23.204.*



+19 Profil

icon Pomoc oko matrica!16.09.2007. u 21:55 - pre 201 meseci
Malo sam trazio po netu ali nisam nasao nesto sto mi bi pomoglo, ako neko zna dobru literaturu, ali na srpskom(engleski znam solidno ali za ovako nesto ako ispustim neku rijec postoji velika mogucnost da necu shvatiti). Sta mi konkretno potrebno. Kako rotirati objekat oko svojih osa preko matrica i oko nekog vektora (npr [0, 1, 0], [0, 0, 1], ...)
 
Odgovor na temu

dragansm
Dragan Smiljanic

Član broj: 38170
Poruke: 191
89.216.219.*



Profil

icon Re: Pomoc oko matrica!16.09.2007. u 23:48 - pre 201 meseci
Eve ga link: http://mathworld.wolfram.com/RotationMatrix.html
Ignorisi sve sto pise na engleskom ili koji god da je jezik. Pogledaj formulice (4), (5) i (6). Matematicka formulacije je univerzalna :)
Rotacije oko x, y, z ose definisane su uglovima α,β i γ datim u radijanima. Mozda ces tvoje uglove trebati da pomnozis sa π/180 da bih dobio radijane.
Ostaje jos rotacija objekta - tvoje tacke u obliku (x,y,z) koji cine objekt treba da pomnozis sa datom matricom. Mozda ce ti prethodno trebati translacija objekta - svakoj tacki pre mnozenja sa matricom dodaj (-x0, -y0, -z0) - centar rotacije ako ne zelis da rotiras oko tacke (0, 0, 0), pa posle rezultat mnozenja pomeris za (+x0, +y0, +z0).
Naravo, sve ovo ako tvoj PC ne podrzava ni openGL ni DirectX :) sto ne verujem da je slucaj. Ok, shvatio se, sve ti ovo ne treba.
I openGL i DirectX imaju funkcije koje kreiraju tvoje zeljene matrice.
DirectX:
D3DXMatrixRotationX(D3DXMATRIX *pOut, FLOAT angle)
D3DXMatrixRotationY(D3DXMATRIX *pOut, FLOAT angle)
D3DXMatrixRotationZ(D3DXMATRIX *pOut, FLOAT angle)
Ima neka knjiga na srpskom o DirectX-u - malo kopaj po ovom forumu da joj nadjes ime.
OpenGL:
glRotated ( angle , x , y , z ) - angle nije u radijanima nego u stepenima, (x, y, z) definise vektor rotacije
- ova funkcija ne vraca vektor nego cacka po matricama u GPU direktno
Nisam imao mnogo vremena da citam ceo diplomski rad, ali ovde je na srpskom objasnjeno sta/kako/zasto u OpenGL
http://147.91.203.209/Download..._radovi/nikola_milivojevic.pdf

Jos jedan koristan link:
vvv.gugl.kom
 
Odgovor na temu

[es] :: 3D programiranje :: Pomoc oko matrica!

[ Pregleda: 3015 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.