求两条空间直线的最近距离,以及他们最近距离线的两点坐标

设有两空间线段

  1. Ls,其起点、终点坐标为s0、s1,方向向量u⃗ =s1−s0

  2. Lt,其起点、终点坐标为t0、t1,方向向量v⃗ =t1−t0
    记两线段对应的直线为ls、lt,采用向量表示法如下:

ls=s0+cs⋅u⃗

lt=t0+ct⋅v⃗
当0≤cs、ct≤1时,上述两式表达
设最短距离两点分别为sj、tj,则有

sj=s0+sc⋅u⃗

tj=t0+sc⋅v⃗
其中sc、tc为sj、tj两点所对应的标量。

记向量w⃗ =sj−tj,记向量w⃗ 0=s0−t0,根据下图可以得出:

w⃗ =s0+sc⋅u⃗ −(t0+tc⋅v⃗ )

即:

w⃗ =w⃗ 0+sc⋅u⃗ −tc⋅v⃗ (公式1)
如果s、t两条直线不平行、重合,则存在唯一的两点sc、tc使线段sctc−→−为ls、lt最近两点的连线。同时,线段sctc−→−也是唯一与两条直线同时垂直的线段。转换为向量表达即为:

u⃗ ⋅w⃗ =0v⃗ ⋅w⃗ =0
将公式1代入上述两式可得

(u⃗ ⋅u⃗ )sc−(u⃗ ⋅v⃗ )tc=−u⃗ ⋅w⃗ 0(公式2)

(v⃗ ⋅u⃗ )sc−(v⃗ ⋅v⃗ )tc=−v⃗ ⋅w⃗ 0(公式3)
记a=u⃗ ⋅u⃗ ,b=u⃗ ⋅v⃗ ,c=v⃗ ⋅v⃗ ,d=u⃗ ⋅w⃗ 0,e=v⃗ ⋅w⃗ 0,代入上述方程则可得:

sc=be−cdac−b2(公式4)

tc=ae−bdac−b2(公式5)


注意到上式中分母:

ac−b2=u⃗ ⋅u⃗ ×v⃗ ⋅v⃗ −(u⃗ ⋅v⃗ )2

⇒ac−b2=|u⃗ |2⋅|v⃗ |2−(|u⃗ |⋅|v⃗ |⋅cosq)2=(|u⃗ |⋅|v⃗ |⋅sinq)2≥0


当ac−b2=0时,公式2和公式3相互独立,则两直线平行,直线间的距离为

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值