Как сравнить ориентацию трехмерного вектора с плоскостью в трех измерениях - PullRequest
0 голосов
/ 23 октября 2018

В настоящее время я пытаюсь построить плоскость в трехмерном пространстве, но не знаю, как это сделать для имеющейся у меня проблемы.

В настоящее время у меня есть код, который определяет трехмерный вектор в соответствии с имеющимися у меня координатами.это включает в себя возможность вращать, переводить и определять угол между векторами.

Следующим шагом является определение плоскости.Я не уверен, что лучший способ сделать это, однако.Самолет будет в 100 100 100 ящиках, будет плоским и, вероятно, будет существовать на высоте z около 30.

Моя проблема возникает из-за того, что мне нужен этот самолет, чтобы сделать пару вещей:

1Мне нужно иметь возможность вращать его вокруг трех осей.

2: Мне нужно измерить наименьший угол между плоскостью и вектором, который я определил, где вектор пересекает плоскость.

Сначала я пытался заполнить массив с единичными единицами, где будет самолет и т. Д., Но я не вижу, чтобы это действительно работало так, как мне нужно.

Кто-нибудь знает какой-либо другой инструмент, который я мог бы использовать в этой ситуации?Большое спасибо.

1 Ответ

0 голосов
/ 23 октября 2018

Прежде всего вам понадобится вектор нормали к плоскости.Оттуда и следуя этой ссылке вам будет легко понять это:)

В основном вы получаете арксинус скалярного произведения вашего вектора и вектора нормали плоскости, деленного напроизведение норм обоих векторов.

PS: Если плоскость параллельна плоскости XY, то это нормальный вектор, это просто (0,0,1).

...