您当前的位置: 首页 > 

VT LI

暂无认证

  • 3浏览

    0关注

    126博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

点到平面距离完整推导

VT LI 发布时间:2019-12-13 10:13:43 ,浏览量:3

前几天跟同事讨论一个几何知识时遇到了一些疑问,后面经过推导弄明白了,其实这道题不难,但是里面有些基本的原理深究的话一开始还是没想明白,在这里记录下:

点到面的距离一般还说时最短距离,但一个平面一般是有界限的,所以需要先把一个平面用截距式方程显示为:

Ax+By+Cz+D=0

借用这张图来表示:

可以看到要求d(最短距离)需要知道q点到p点(p点时平面的点)的距离(也就是他的模),以及\Theta这个角度,

通过三角函数知道:d=\left | \underset{PQ}{\rightarrow} \right |\cdot \cos \Theta\

因为pg的模本身我们不确定,所以需要得到一个确定的值来运算

我们可以用PG\cdot n来做运算,要得到这块我们法线d这个公式只需要加上\left |\underset{n}{\rightarrow} \right |就可以了,

所以我们乘\left |\underset{n}{\rightarrow} \right |\left |\underset{n}{\rightarrow} \right |得到

已知PQ\cdot n=\left |\underset{PG}{\rightarrow} \right |\star \left |\underset{n}{\rightarrow} \right |\star \cos \Theta

得:

 

到了这一步我们法线我们得法向量还未知:

但其实我们通过截距式方程的公式可知n={A,B,C}。

当然我们还时可以推导出来的。

法向量的推导可以用两个方式,一个是取平面的任意两条线与法向量点乘,这个值必然为0。另一个是用任意两条平面的线做叉乘,这时可得垂直于他的法向量。

下面我们推导点乘的方式:

我们已知平面的截距式公式为:Ax+By+Cz+D=0

得到:截距式表明了,当y=0,z=0时,跟x轴相交,代入公式得到x=\frac{-D}{A},

同理y=0,z=0时,跟y轴相交,带入公式得到y=\frac{-D}{B}

同理x=0,y=0时,跟z轴相交,带入公式得到z=\frac{-D}{C}

然后我们可以得到平面的特殊的三个点a点:(\frac{-D}{A},0,0),b点:(0,\frac{-D}{B},0),c点:(0,0,\frac{-D}{C})

那么我们可以得到向量ab:(x_{b}-x_{a},y_{b}-y_{a},z_{b}-z_{a}),ac:(x_{c}-x_{a},y_{c}-y_{a},z_{c}-z_{a}),bc:(x_{c}-x_{b},y_{c}-y_{b},z_{c}-z_{b})

具体得到ab:(\frac{D}{A},\frac{-D}{B},0),ac:(\frac{D}{A},0,\frac{-D}{C}),bc:(0,\frac{D}{B},\frac{-D}{C})

我们之前说了平面和法向量的点乘一定为0

点乘的公式为:

带入进入得

\frac{D}{A}*x+\frac{-D}{B}*y+0*z = 0

\frac{D}{A}*x+0*y+\frac{-D}{C}*z=0

0*x+\frac{D}{B}*y+\frac{-D}{C}*z=0

这里公式列出来我们可以求解,我们可以得到两种情况可以让xyz使上面得值为0得,

第一个值时xyz都为0,这个就i是具体的一个点了,而不是面。

那么另外一个值就只有点(A,B,C)了。

由此可得法向量为(A,B,C)

 

最终带入到上面的公式中得:

(其中(x0,y0,z0)是点Q的值,ABCD是截距式公式的4个常量值)

最后的等式就是我们要求的点到面的最短距离了。

只需要带入具体的值就能算出来了。

 

这个公式在具体的应用中也会用到。

 

有时我们能直接套公式不需要推导就能完成很多事情,但只有完整推导出公式才属于自己的知识,才能在以后的复杂应用中灵活引用。

关注
打赏
1649603425
查看更多评论
立即登录/注册

微信扫码登录

0.0549s