本文主要是介绍Unity坐标系计算3D中两直线的最短距离及最近点的几何原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
方法1:
- 已知空间中两直线AB, CD,判断它们是否相交
问题的关键是求出这两条直线之间的最短距离,以及在这个距离上最接近两线的点坐标,判断该点是否在直线AB和直线CD上。
首先将直线方程化为对称式,分别得到两直线方向向量AB=(x1,y1,z1), CD=(x2,y2,z2),再将两向量AB, CD叉乘得到其公垂向量N=(x,y,z),在AB, CD两直线上分别选取点E,F(任意),得到向量M,求向量M在向量N方向的投影即为两异面直线间的距离了(就是最短距离啦)。
最短距离的求法:d=|向量N向量M|/|向量N|(上面是两向量的数量积,下面是取模)。*
设两直线与距离的交点分别为S,T,可带入公垂线N的对称式中得到第一个方程,又因为S,T两点分别满足直线AB和CD的方程,所以得到关于S(或T)的第二个方程,联立两个方程分别解出来即可!
方法2:
这篇关于Unity坐标系计算3D中两直线的最短距离及最近点的几何原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!