直线和平面的交点
 
 
 
 
 
 
 
 
 
 
 
贡献者: addis
若平面上任意一点为 $ \boldsymbol{\mathbf{p}} = (p_x, p_y, p_z)$,法向量为 $ \boldsymbol{\mathbf{n}} = (n_x, n_y, n_z)$。直线上一点为 $ \boldsymbol{\mathbf{s}} = (s_x, s_y, s_z)$,方向为 $ \boldsymbol{\mathbf{v}} = (v_x, v_y, v_z)$,求射线与平面的交点。注意 $ \boldsymbol{\mathbf{n}} $ 和 $ \boldsymbol{\mathbf{v}} $ 不必是单位矢量。
平面方程为
\begin{equation}
( \boldsymbol{\mathbf{r}} - \boldsymbol{\mathbf{p}} ) \boldsymbol\cdot \boldsymbol{\mathbf{n}} = 0~.
\end{equation}
直线的参数方程为
\begin{equation}
\boldsymbol{\mathbf{r}} = \lambda \boldsymbol{\mathbf{v}} + \boldsymbol{\mathbf{s}} ~.
\end{equation}
式 2 代入
式 1 解得
\begin{equation}
\lambda = \frac{( \boldsymbol{\mathbf{p}} - \boldsymbol{\mathbf{s}} ) \boldsymbol\cdot \boldsymbol{\mathbf{n}} }{ \boldsymbol{\mathbf{v}} \boldsymbol\cdot \boldsymbol{\mathbf{n}} }~.
\end{equation}
再代入
式 2 得交点为
\begin{equation}
\boldsymbol{\mathbf{r}} = \frac{( \boldsymbol{\mathbf{p}} - \boldsymbol{\mathbf{s}} ) \boldsymbol\cdot \boldsymbol{\mathbf{n}} }{ \boldsymbol{\mathbf{v}} \boldsymbol\cdot \boldsymbol{\mathbf{n}} } \boldsymbol{\mathbf{v}} + \boldsymbol{\mathbf{s}} ~.
\end{equation}
 
 
 
 
 
 
 
 
 
 
 
© 小时科技 保留一切权利