三维空间中判断射线与平面是否相交 |
您所在的位置:网站首页 › cad光线怎么表示 › 三维空间中判断射线与平面是否相交 |
摘要
本文内容包括: 三维空间中射线与平面的表示方法,三维空间中判断射线与平面是否相交。文末参考链接的资料都不错,但总漏点东西,所以把它们说总结到了一起。 三维空间中射线的表示方法射线可以用三个量来表示:射线的起始点、射线的方向向量以及射线的长度。 平面可以用二个量来表示:平面上任一点,过该点的平面法向量。 射线不同于直线,射线存在起始点和方向,它与平面存在3种情况: 射线与平面平行。这时候肯定不相交。射线与平面不平行。但平面在射线负方向,这时候也不相交。射线与平面不平行。且平面在射线正方向,这时候射线与平面相交。下面分情况讨论。 n ⃗ u ⃗ = 0 \vec{n}\vec{u} = 0 n u =0时,表示射线与平面平行,这时候肯定不相交。 n ⃗ u ⃗ ≠ 0 \vec{n}\vec{u} \neq 0 n u =0时,表示射线与平面不平行,这时候射线所在的直线与平面必定相交于一点,记该点为 P ( t ) P(t) P(t),那么有: ( P 0 − P ( t ) ) n ⃗ = 0 (P_0 - P(t))\vec{n} = 0 (P0−P(t))n =0 带入射线参数方程 P ( t ) = P 0 ′ + t u ⃗ P(t) = P_0^{'} + t \vec{u} P(t)=P0′+tu , 有 ( P 0 − P 0 ′ − t u ⃗ ) n ⃗ = 0 (P_0 - P_0^{'} - t \vec{u})\vec{n} = 0 (P0−P0′−tu )n =0 解之得 t = ( P 0 − P 0 ′ ) n ⃗ u ⃗ n ⃗ t = \frac{(P_0 - P_0^{'})\vec{n}}{\vec{u}\vec{n}} t=u n (P0−P0′)n 注意,这里是向量点积,所以分子分母的 n ⃗ \vec{n} n 不能消掉。 所以我们可以求出射线所在的直线与平面交点 P ( t ) = P 0 ′ + t u ⃗ = P 0 ′ + ( P 0 − P 0 ′ ) n ⃗ u ⃗ n ⃗ u ⃗ P(t) = P_0^{'} + t \vec{u} = P_0^{'} + \frac{(P_0 - P_0^{'})\vec{n}}{\vec{u}\vec{n}} \vec{u} P(t)=P0′+tu =P0′+u n (P0−P0′)n u 那么如何判断射线是否与平面相交呢? 当 t > = 0 t >= 0 t>=0时,交点在射线正方向上,所以射线与平面相交,交点即为P(t); 当 t < 0 t < 0 t |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |