空间几何基础

1.线的表示

  选定一个基点

  然后确定一个方向向量
  就能得到一条直线
  稍作转化得到参数方程(parametric equation of a line in 3d space)
  以及直线的对称方程(sysmmetric equation)
  我们很容易注意到,如果方向向量有成员为0,那么上述等式就有问题了,这个时候,说明这个线落在一个面里面。
  比方说,a=0,那么很容易就得到
  也就是说这条线位于 x=x0 平面上(平行于yz平面)

2.面的表示

  选定一个基点

  然后确定法向量


  就能得到一个平面
  General Form:

3.点、线、面关系计算

两条线平行:

  他们的 direction vector 关系是 scalar multiple

两条面平行:

  他们的 normal vector 关系是 scalar multiple

计算线和面的夹角:

  90度减去线和面法线的夹角

计算线和面的交点:

  将线转化成参数方程然后带入面的方程求出参数,就能确定交点坐标

计算面和面的交线:

  将两个面的法向量叉乘得到方向向量
  取方向向量上不为零的一个方向,比方说x,令x=0,根据两个平面方程求出对应的 y 和 z,也就是基点
  一个点,一个方向,确定一条线。

计算点到面的距离:

  假设有点坐标(x,y,z),平面方程ax+by+cz-d=0,那么该点到面的距离为

计算两个平行面的距离:

  可以近似转化成点到面距离的求解思路

skew lines(不平行且不相交的直线)之间的距离:

  1. 求出两条线的方向向量
  2. 用这两个向量求出法向量
  3. 在这两条skew lines 上各随机取一个点
  4. 我们得到了两个平行面
  5. 平行面的距离就是这两条 skew lines 的距离

计算点到线的距离:

  直观可见,有点 a 和线 l,在线上任取一点p,点 a 减去 p 得到向量 u,l 的方向向量为 v,点到线的距离就是 u v 的叉乘除以 v 的模量。

你可能感兴趣的:(空间几何基础)