метод для вычисления смещений вдоль двух векторов (горизонтального и вертикального), основываясь на данных эксцентриситета и ориентации объектов
Задача такова - написать метод для вычисления смещений вдоль двух векторов (горизонтального и вертикального), основываясь на данных эксцентриситета и ориентации объектов. На входе - hor_vector, ver_vector и offset_vector. Сейчас я делаю это простейшим способом, просто сначала нормализую вектора горизонтали и вертикали, а потом для каждой из осей (x, y) делаю скалярное произведение вектора смещения и вектора оси. Но этот метод дает сбой, например при таких значениях:
hor_vector - 0.0, -1.0, 0.0.
ver_vector - 0.018057661227177894, 0.0, 0.999836947142385.
offset_vector - -0.014293568321676275, -7.75588430235275, -0.7914224070724902.
На выводе - x:7.755884 y:-0.791551 хотя значение x должно быть отрицательным(видно наглядно у объекта).
Также пробовал через систему уравнений и матрицу, не помогло.
Как можно рассчитать?
Ответы (1 шт):
Второй компонент оффсета сонаправлен со вторым компонентом hor_vector, так что положительное значение "х" - это нормально