2015-12-15 7 views
0

Я не нашел ответа на свой вопрос, выполнив поиск. Так что это может быть так просто или слишком сложно. Поэтому, пожалуйста, несите меня.Как найти точки пересечения двух плоскостей

У меня есть две плоскости, пересекающиеся друг с другом, как вы можете видеть на картинке.

наклонной плоскости строится с помощью X, Y и Z (матрицы по поиску (X, Y, Z)). Вторая плоскость имеет те же матрицы X и Y, что и просто Z - нулевая матрица. Теперь мне интересно найти значения X и Y , где обе плоскости пересекаются.

+2

У вас есть уравнение, которое вы использовали для создания этих точек, или у вас есть только доступные матрицы? – rayryeng

ответ

0

Решение одинаково просто, начинаете ли вы с уравнений плоскости или только с матрицами значений.

С уравнениями плоскости вы имеете два уравнения в трех неизвестных. Разрешите это одному уравнению с двумя неизвестными (X и Y), и у вас есть линия пересечения, из которой вы можете сгенерировать любой желаемый набор точек пересечения.

С матрицами вы знаете соответствующее значение z - оно равно нулю. Выберите свой любимый метод поиска, чтобы найти индексы в исходной матрице Z, в которой значение равно нулю. Вы получаете точку пересечения, используя их для индексации в матрицах X и Y. (И если значения в Z никогда не достигают нуля, все, что вам нужно сделать, это интерполяция.)

Причины простоты в том, что (а) ваши объекты являются плоскостями и (b) один из них параллелен базисному вектору пространства.

Устранение ограничения (b) добавляет только сложность вычитания двух плоскостей друг от друга, чтобы позволить (b) снова удерживать. (Это полезно только в том случае, если у вас нет уравнений плоскости, и если вы это сделаете, вы можете применить решение, заданное для любых двух плоскостей, независимо от ориентации.)

Если (а) ослаблена, становится нетривиальным - для определения пространства пересечений произвольных многообразий может быть достаточно вычислительно-интенсивным, как подтвердит обширная литература по обнаружению столкновений в играх и робототехнике.

Addendum: This link appears to cover the idea more explicitly, но он не предполагает, что поверхности являются плоскостями и поэтому содержит дополнительную сложность, которая вам здесь не нужна.

Смежные вопросы