Mam wektor normalny w 3D, czyli w stylu: \(\displaystyle{ n = (n_x,n_y,n_z)}\)
i chcę teraz wszystko, znaczy jakieś dowolne inne punkty/obiekty, obrócić do tego wektora,
znaczy w taki sposób, aby ten wektor normalny zrobił się pionowy, czyli po prostu taki:
\(\displaystyle{ n' = (0,0,1)}\)
no i chodzi mi o te pozostałe punkty:
\(\displaystyle{ r = (x,y,z) -> r' = A(n).r}\)
gdzie A(n) to ta szukana transformacja, prostująca n do pionu minimalnym kosztem,
czyli polegająca na orbocie wektora n o ten kąt, który należy... wyzerować.
A(n) = ?
-- 27 kwietnia 2019, 19:28 --
Brak pomysłów?
To jest problem rotacji dookoła zadanej osi,
tylko że w tym przypadku oś jest zadana niejawnie.
Mamy wektor normalny do którego mamy obrócić oś z:
\(\displaystyle{ n = (n_x,n_y,n_z)}\)
zatem oś obrotu v jest prostopadła do tego wektora, czyli:
\(\displaystyle{ v = (n_y, -n_x, 0)}\)
natomiast kąt, obrotu dookoła v, jest tu także zawarty w tym n, jako kąt nachylenie n do osi z, po prostu...