13.07.2015 Views

Vizualizacija prostora Lobacevskog - Alas

Vizualizacija prostora Lobacevskog - Alas

Vizualizacija prostora Lobacevskog - Alas

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

(*refleksija u odnosu na tacku p, ili u odnosu na hiperravan kroz koordinatni \pocetak sa vektorom normale p *)r[p_] := Module[{pm},pm = List /@ p; (*prebacujemo p u matricu 1*4 *)IdentityMatrix[4] - (2 pm.Transpose[pm]. j)/(p.j.p) // N] ;(*translacija za h-duz AB*)translate[a_, b_] := r[m[a, b]].r[a](*rotacija oko h-duzi AB, za ugao \[Theta]:Transliramo tako da AB polazi iz koordinatnog pocetka, rotiramo koordinatni \sistem tako da AB bude paralelna z-osi, rotiramo za ugao \[Theta] oko z-ose, \vratimo rotaciju koor. sistema, vratimo translaciju. Sve rotacije su \euklidske posto se u koordinatnom pocetku eukliski i hiperboliki uglovi \poklapaju *)rotate[a_, b_][\[Theta]_] := Module[{an, bn, bt, u, v, w, m, r},(*moramo da transliramo h-duz AB u koordinatni pocetak da bismo dobili euklidsku duz,i nesto slicno vektoru *)bt = translate[a, {0, 0, 0, 1}]. b ;bn = Drop[bt/bt[[4]], -1];(*transilrane i normalizovane koordinate tacke b*)(*matrica rotacije za ugao \[Theta] oko z-ose*)r = ( {{Cos[\[Theta]], Sin[\[Theta]], 0, 0},{-Sin[\[Theta]], Cos[\[Theta]], 0, 0},{0, 0, 1, 0},{0, 0, 0, 1}} );If[ bn[[1]]^2 + bn[[2]]^2 < 0.001,(*Ako nam je posle transliranja AB vec paralelan z osi,onda nema potrebe da rotiramo koordinatni sistem*)translate[{0, 0, 0, 1}, a].r.translate[a, {0, 0, 0, 1}],(*inace*)(* vektori rotacije koordinatnog sistema: *)(* w=\!\(\*OverscriptBox["AB", "\[LongRightArrow]"]\)/(||\!\(\*OverscriptBox["AB", "\[LongRightArrow]"]\)||) ,65

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!