射线与平面相交判断
射線
定義
在歐幾里德幾何中,射線的定義如下:
直線上一點和它一旁的部分,由此知射線有兩個性質:
1. 有一個端點
2. 一端無線延伸
參數方程
p(t) = p0 + tu
p0是射線的起點, u是射線的方向向量,t∈[0,∞)
解釋一下這個方程,見下圖,根據t的取值不同,可得射線上不同的點,所有這些點便構成了整個射線(紅色部分)
平面
定義
中文的沒找到,英文的:In mathematics, a plane is a flat surface
一個平面可以由平面上的一點p0和平面的法向量n來確定(過一點,有且只有一個平面與已知直線垂直),如下圖
參數方程
平面是由無窮多個點組成的,對于過點p0且法向量為n的平面來說,其上任意一點p滿足如下方程
n?(p - p0) = 0
解釋一下, 符號“?”表示dot product(點積),因n與平面垂直,所以n與平面內任意直線垂直,而p - p0則是平面內的一個向量,所以n與p - p0垂直,又因為互相垂直的向量其點積為0,所以就有了上面的方程。見下圖
向量的點積:對于任意兩個向量V1(x1, y1, z1)與V2(x2, y2, z2),V1?V2 = x1x2 + y1y2 + z1z2
切入正題,射線與平面相交。
射線若于平面相交,則交點一定在平面上,設交點為p,那么p一定同時滿足射線的方程和平面的方程,于是
p(t) = p0 + tu //這里的p0是射線的起點
n?(p - p0) = 0 //這里的p0是平面所過的點
注意,這兩個方程中的p0是不同的,為區別,將平面方程中的p0改為p1,然后將射線方程代入平面方程
n?(p0 + tu – p1) = 0 整理后得到
t = (n?p1 – n?p0) / n?u (注意:n不可約去)
由向量點乘分配律得:
t = n?(p1-p0)/n?u
若t∈[0,∞),則射線與平面相交,且交點為p0 + tu,將上面的t帶入射線方程即可否則不相交。
總結
- 上一篇: 两平面平行方向向量关系_2017-201
- 下一篇: 平面设计版式构成实用技巧