现在的位置: 首页 > 综合 > 正文

仿射(Affine)空间

2018年03月19日 ⁄ 综合 ⁄ 共 871字 ⁄ 字号 评论关闭

Affine几何

 

Affine几何是研究这样一种几何: 它只涉及两点之间的向量,而不考虑实际的距离、角度,甚至不考虑作为参照的原点。这些几何构成的空间就是Affine空间。

 

 

Affine空间

 

相比较于熟悉的欧几里得空间,Affine有一些特别的性质。比如欧式空间认为空间中有一个原点,对于这个原点有向量a与b。在Affine空间中认为任意一点均可作为原点,对同样两个点有向量a’和b’。在两个空间中把向量分别相加:

欧式空间:a + b

Affine空间:a’ + b’ = p + (a – p) + (b - p)

这就导致在两个空间中同一种运算可以得出不同的结果。比如有一个a和b的线性组合c:

c = 4a + 6b

c’ = 4a’ + 6b’ = p + 4a - 4p + 6b - 6p = 4a + 6b -9p

可以看到c’多了一个p项。如果我们要令它们相等就必须把这个系数变为0,即线性组合系数之和为1。

考虑:

c = 0.4a + 0.6b

c’ = 0.4a’ + 0.6b’ = p + 0.4a – 0.4p + 0.6b – 0.6p = 0.4a + 0.6b

c = c’

 

Affine空间的好处

 

如前所述,如果线性组合系数为1,那么两种空间中的运算没有任何区别,Affine空间还更加简便。如果一几何体是“Affine Invariant”的,就是说它不管是被旋转、缩放还是平移,都不会改变它的性质。

 

再举一个复杂些的例子。有一个10x3的Mesh,Pc在一个转换矩阵U (100x10)作用下变成了100x3的Mesh, Pf。

Pf = U * Pc

考虑Pf中任意一个点<pfx_i, pfy_i, pfz_i> =

u_i,1 * <pcx_1, pcy_1, pcz_1> + u_i,2* <pcx_2, pcy_2, pcz_2> + … + u_i,10 * <pcx_10, pcy_10, pcz_10>

Pf中的任何一个点都可以看成Pc中点的线性组合,而U中的每一行都是对应一组Pf点的系数。如上可知,如果U中每一行的系数之和都取为1,就可以保证在变换后的几何图形是Affine Invariant的。另外,U中每一列对应一格Pc点,所以每列叫做一个Pc点的Shape Function。

抱歉!评论已关闭.