平面方程的几种形式

平面方程

一、一般方程

A ( x − x 0 ) + B ( y − y 0 ) + C ( z − z 0 ) + D = 0 A(x-x_0) + B(y-y_0) + C(z-z_0) + D = 0 A(x−x0)+B(y−y0)+C(z−z0)+D=0

法向量: n ^ = ( A , B , C ) \mathbf{\hat n} = (A, B, C) n^=(A,B,C)

二、点法式

n ^ ⋅ ( p − p 0 ) = 0 \mathbf{\hat n} \cdot (p-p_0) = 0 n^⋅(p−p0)=0

  • n ^ \mathbf{\hat n} n^ 是平面的法向量。
  • p p p 是平面上的任意一点。
  • p_0 是平面上的一个已知点。
三、距离和法线

已知沿法向量方向平面到原点的垂直距离为 h e i g h t height height, 法向量: n ^ = ( A , B , C ) \mathbf{\hat n} = (A, B, C) n^=(A,B,C)。

高度

height 是从原点到平面的垂直距离,即沿着法向量方向的距离

单位法向量

将法向量 n ^ \mathbf{\hat n} n^ 归一化为单位向量。单位向量是具有相同方向但长度为1的向量。计算方法为:
n ^ = n ∣ n ∣ = ( A A 2 + B 2 + C 2 , B A 2 + B 2 + C 2 , C A 2 + B 2 + C 2 ) \hat{\mathbf{n}} = \frac{\mathbf{n}}{|\mathbf{n}|} = \left( \frac{A}{\sqrt{A^2 + B^2 + C^2}}, \frac{B}{\sqrt{A^2 + B^2 + C^2}}, \frac{C}{\sqrt{A^2 + B^2 + C^2}} \right) n^=∣n∣n=(A2+B2+C2 A,A2+B2+C2 B,A2+B2+C2 C)

利用高度确定平面上的一点

沿着单位法向量方向移动这一距离以找到平面上的一点 ( x 0 , y 0 , z 0 ) (x_0,y_0,z_0) (x0,y0,z0)
( x 0 , y 0 , z 0 ) = h e i g h t ⋅ n ^ = ( h e i g h t ⋅ A A 2 + B 2 + C 2 , h e i g h t ⋅ B A 2 + B 2 + C 2 , h e i g h t ⋅ C A 2 + B 2 + C 2 ) (x_0,y_0,z_0) = height \cdot \mathbf{\hat n} = \left( height \cdot \frac{A}{\sqrt{A^2 + B^2 + C^2}}, height \cdot \frac{B}{\sqrt{A^2 + B^2 + C^2}}, height \cdot \frac{C}{\sqrt{A^2 + B^2 + C^2}} \right) (x0,y0,z0)=height⋅n^=(height⋅A2+B2+C2 A,height⋅A2+B2+C2 B,height⋅A2+B2+C2 C)

表示: 从原点沿着单位法向量方向移动了 height 的距离,达到了平面上的某一点。

代入点法式方程
A ( x − x 0 ) + B ( y − y 0 ) + C ( z − z 0 ) = 0 A(x-x_0) + B(y-y_0) + C(z-z_0) = 0 A(x−x0)+B(y−y0)+C(z−z0)=0

A ( x − h e i g h t ⋅ A A 2 + B 2 + C 2 ) + B ( y − h e i g h t ⋅ B A 2 + B 2 + C 2 ) + C ( z − h e i g h t ⋅ C A 2 + B 2 + C 2 ) = 0 A(x - height \cdot \frac{A}{\sqrt{A^2 + B^2 + C^2}}) + B(y - height \cdot \frac{B}{\sqrt{A^2 + B^2 + C^2}}) + C(z - height \cdot \frac{C}{\sqrt{A^2 + B^2 + C^2}}) = 0 A(x−height⋅A2+B2+C2 A)+B(y−height⋅A2+B2+C2 B)+C(z−height⋅A2+B2+C2 C)=0

简化方程

展开和简化得到:
A x − h e i g h t ⋅ A 2 A 2 + B 2 + C 2 + B x − h e i g h t ⋅ B 2 A 2 + B 2 + C 2 + C x − h e i g h t ⋅ C 2 A 2 + B 2 + C 2 = 0 Ax - \frac{height \cdot A^2}{\sqrt{A^2 + B^2 + C^2}} + Bx - \frac{height \cdot B^2}{\sqrt{A^2 + B^2 + C^2}} + Cx - \frac{height \cdot C^2}{\sqrt{A^2 + B^2 + C^2}} = 0 Ax−A2+B2+C2 height⋅A2+Bx−A2+B2+C2 height⋅B2+Cx−A2+B2+C2 height⋅C2=0

进一步整理:
A x + B x + C x = h e i g h t ⋅ ( A 2 + B 2 + C 2 ) A 2 + B 2 + C 2 Ax + Bx + Cx = height \cdot \frac{ (A^2 + B^2 + C^2)}{\sqrt{A^2 + B^2 + C^2}} Ax+Bx+Cx=height⋅A2+B2+C2 (A2+B2+C2)

因为:
( A 2 + B 2 + C 2 ) 1 ( A 2 + B 2 + C 2 ) 1 2 = A 2 + B 2 + C 2 \frac{ (A^2 + B^2 + C^2)^1}{(A^2 + B^2 + C^2)^{\frac{1}{2}}} = \sqrt{A^2 + B^2 + C^2} (A2+B2+C2)21(A2+B2+C2)1=A2+B2+C2

所以最后得到:
A x + B x + C x = h e i g h t Ax + Bx + Cx = height Ax+Bx+Cx=height

n ⋅ p = h e i g h t \bold{n} \cdot p = height n⋅p=height
p p p 是平面上的任意一点
h e i g h t height height 的正负取决于法向量的方向

相关推荐
Xvisio诠视科技11 小时前
超越平面交互:SLAM技术如何驱动MR迈向空间计算时代?诠视科技以算法引领变革
平面·mr·空间计算
The_Killer.1 天前
格密码--从FFT到NTT(附源码)
学习·线性代数·密码学·格密码
小李独爱秋1 天前
特征值优化:机器学习中的数学基石
人工智能·python·线性代数·机器学习·数学建模
把玩计算机2 天前
相机几何 空间点到像素平面转换
数码相机·平面
18538162800余+2 天前
数字人分身 + 矩阵系统聚合的源码搭建与定制开发
线性代数·矩阵
semantist@语校2 天前
第十九篇|东京世界日本语学校的结构数据建模:制度函数、能力矩阵与升学图谱
数据库·人工智能·线性代数·矩阵·prompt·github·数据集
点云SLAM2 天前
四元数 (Quaternion)在位姿(SE(3))表示下的各类导数(雅可比)知识(2)
人工智能·线性代数·算法·机器学习·slam·四元数·李群李代数
老歌老听老掉牙4 天前
OpenCascade几何建模:平面创建与法向拉伸的工程实现
c++·平面·opencascade
云手机掌柜4 天前
下一代社媒运营工具:亚矩阵云手机集成AIGC与数字人技术引领内容革命
大数据·线性代数·智能手机·矩阵·aigc