求空间直线与平面的交点

来源:互联网 发布:python sys.exit 0 编辑:程序博客网 时间:2024/05/02 04:49

若直线不与平面平行,将存在交点。如下图所示,已知直线L过点mm1m2m3),且方向向量为VLv1v2v3),平面P过点nn1n2n3),且法线方向向量为VPvp1vp2vp3),求得直线与平面的交点O的坐标(xyz):

求空间直线与平面的交点

将直线方程写成参数方程形式,即有:

x = m1+ v1 * t

y = m2+ v2 * t                                                    (1)

z = m3+ v3 * t

 

将平面方程写成点法式方程形式,即有:

vp1 * (x  n1) + vp2 * (y  n2) + vp3 * (z  n3) = 0           (2)

 

则直线与平面的交点一定满足式(1)和(2),联立两式,求得:

t = ((n1  m1)*vp1+(n2  m2)*vp2+(n3  m3)*vp3) / 

(vp1* v1+ vp2* v2+ vp3* v3)                                       (3)

 

如果(3)式中分母(vp1* v1+ vp2* v2+ vp3* v3)0,则表示直线与平面平行,即直线与平面没有交点。

否则求解出t后,然后将t代入式(1)即可求得交点O的坐标(xyz)。

0 0
原创粉丝点击