Skip to main content

三维计算几何基础

Summary

三维计算几何把向量运算推广到空间。三维向量的加减、数乘逐分量进行;点积得标量,用于求夹角或判垂直;叉积得向量,垂直于两向量张成的平面、方向由右手定则确定,模长为平行四边形面积,为零向量当且仅当两向量共线。混合积先叉积再点积,其绝对值是三向量张成的平行六面体体积,为零当且仅当三向量共面,符号表示手性。平面由法向量与一点确定,据此给出点在平面上的判定与点到平面的距离公式。

参考资料​

向量​

三维向量 a⃗=(xa,ya,za)\vec{a}=(x_a,y_a,z_a),其加减、数乘与平面情形完全一致,逐分量运算即可。

点积​

点积(Dot Product)的结果是标量:

a⃗⋅b⃗=xaxb+yayb+zazb=∣a⃗∣∣b⃗∣cos⁡θ\vec{a}\cdot\vec{b}=x_ax_b+y_ay_b+z_az_b=|\vec{a}||\vec{b}|\cos\theta

可用于求两向量夹角,或判断垂直(点积为 00)。

叉积​

叉积(Cross Product)的结果是向量:

a⃗×b⃗=(yazb−zayb,zaxb−xazb,xayb−yaxb)\vec{a}\times\vec{b}=(y_az_b-z_ay_b,z_ax_b-x_az_b,x_ay_b-y_ax_b)

它垂直于 a⃗,b⃗\vec{a},\vec{b} 所张成的平面(方向由右手定则确定),模长:

∣a⃗×b⃗∣=∣a⃗∣∣b⃗∣sin⁡θ|\vec{a}\times\vec{b}|=|\vec{a}||\vec{b}|\sin\theta

等于以两向量为邻边的平行四边形面积。叉积为零向量当且仅当两向量共线。

混合积​

混合积(Scalar Triple Product)是先叉积再点积:

(a⃗×b⃗)⋅c⃗(\vec{a}\times\vec{b})\cdot\vec{c}

其绝对值等于以 a⃗,b⃗,c⃗\vec{a},\vec{b},\vec{c} 为棱的平行六面体体积,符号表示三向量的手性(正为右手系)。混合积为 00 当且仅当三向量共面。

平面​

平面可由一个法向量 n⃗\vec{n} 和平面上一点 P0P_0 确定:点 PP 在平面上当且仅当:

n⃗⋅(P−P0)=0\vec{n}\cdot(P-P_0)=0

法向量可由平面上两个不共线向量叉积得到。点 PP 到该平面的距离为:

d=∣n⃗⋅(P−P0)∣∣n⃗∣d=\frac{|\vec{n}\cdot(P-P_0)|}{|\vec{n}|}