вектор нормали проецируемой поверхности на плоскость xy - PullRequest
3 голосов
/ 05 февраля 2011

у меня есть плоскость, уравнение которой ax + by-z + d = 0.следовательно, его нормальный вектор (a, b-1).Теперь мне нужно спроецировать мой вектор на плоскость xy, чтобы вычислить направление его от северной оси (я думаю, это ось Y здесь. Пожалуйста, помогите мне получить спроецированный вектор. Спасибо.

1 Ответ

1 голос
/ 05 февраля 2011

Я думаю, что вы ищете точечный продукт . Найти направление, в котором стоит самолет, довольно легко.

// generic code, actual code depends on your engine.
// BasePlane.GetNormal() would equal to (0,0,1) for the X/Y plane
float dir = YourPlane.GetNormal().Dot(BasePlane.GetNormal());

Если он равен 1, ваш самолет направлен в том же направлении, что и самолет, с которым вы тестируете. Если он равен -1, он направлен к плоскости. Значение 0 будет означать, что плоскость стоит ортогонально к тестируемой плоскости. Надеюсь, это поможет.

...