通过搜索,我找不到任何问题的答案。所以它可能是如此简单或太难。所以,请耐心等待。
我有两架飞机相互交叉,如图所示。
使用X,Y和Z矩阵(surf(X,Y,Z))绘制倾斜平面。第二个平面具有相同的X和Y矩阵,简单地Z为零矩阵。现在我有兴趣找到两个平面相交的X和Y 值。
答案 0 :(得分:0)
无论是从平面方程开始还是仅从数值矩阵开始,解决方案同样简单。
使用平面方程,您有三个未知数的两个方程。将其解析为两个未知数(X和Y)中的一个方程式,并且您有一条交叉线,您可以从中生成任何所需的交叉点集。
使用矩阵,您知道相关的z值 - 它为零。选择您最喜欢的搜索方法,以在原始Z
矩阵中查找值为零的索引。您可以通过使用这些交集来索引X
和Y
矩阵来获取交集点。 (如果Z
中的值没有完全达到零,那么您需要做的就是插值。)
简单的原因是(a)你的对象是平面,(b)其中一个平行于空间的基础向量。
放宽(b)约束只增加了必须从彼此中减去两个平面以允许(b)再次保持的复杂性。 (这只有在你没有平面方程时才有用;如果你没有,你可以应用任何两个平面给出的解,无论方向如何。)
然而,如果(a)放松了,那么问题就变得非常重要 - 确定任意流形的交叉空间可能是计算密集型的,因为关于游戏和机器人中碰撞检测的大量文献将证明这一点。附录:This link appears to cover the idea more explicitly,但它不会假设曲面是平面,因此包含了您不需要的复杂性。