Повернуть вектор на вектор - PullRequest
0 голосов
/ 23 июня 2018

enter image description here

Как вы можете видеть на этом рисунке, мне нужно найти векторное положение _tPos на основе вектора tPos относительно вектора aPos.

1 Ответ

0 голосов
/ 23 июня 2018

Если вы обозначите длину фиолетовой линии как T, то соответствующий угол поворота phi можно рассчитать как

cos(phi) = 1 - T^2/(2R^2)

Теперь вам нужно повернуть красную точку с координатами x,y на phi по часовой стрелке. Таким образом, координаты повернутой точки:

x' =  cos(phi)*x + sin(phi)*y
y' = -sin(phi)*x + cos(phi)*y

Здесь значение sin(phi) может быть выражено непосредственно как:

sin(phi) = T/R * sqrt(1 - T^2/(4R^2))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...