“齐次坐标表示是计算机图形学的重要手段之一,它既能够用来明确区分向量和点,同时也更易用于进行仿射(线性)几何变换。”—— F.S. Hill, JR
注:齐次坐标用n+1维的坐标来标识n维坐标。
1.在一个坐标基中,若能够将(2,1,1)表示为v(2,1,1,0)则为向量,若是(2,1,1,1)则为一个点。
1.普通坐标与齐次坐标之间的转换:
1.从普通坐标转换为齐次坐标时:
若(x,y,z)是个点,则变为(x,y,z,1)
若(x,y,z)是个向量,则变为(x,y,z,0)
2.从齐次坐标转换为普通坐标时:
如果是(x,y,z,1),则知道它是个点,变成(x,y,z);
如果是(x,y,z,0),则知道它是个向量,仍然变成(x,y,z)
2.简单的线性插值:
图形学中普遍使用的技巧,在诸如2D位图的放大、缩小以及透视投影中都会用到。
基本思想:
给一个x属于[a, b],找到y属于[c, d],使得x与a的距离比上ab长度所得到的比例,等于y与c的距离比上cd长度所得到的比例,用数学表达式描述很容易理解:
这样,从a到b的每一个点都与c到d上的唯一一个点对应。有一个x,就可以求得一个y。
此外,如果x不在[a, b]内,比如x < a或者x > b,则得到的y也是符合y < c或者y > d,比例仍然不变,插值同样适用。