计算机图形学坐标变换
标签(空格分隔): 技术博客
比例变换
沿坐标轴变换: 乘对应对角矩阵即可
沿任意坐标变换:
首先将其变换到标准坐标系中:
乘该坐标系的逆矩阵,如果是该坐标系正交,则其逆矩阵为其转置矩阵,如何求逆矩阵,详见我另一篇博客。
乘以对角矩阵施加变换
- 再乘以该坐标系变换回来
旋转变换
对于二维向量:
< x,y >变成 <-y,x> 即可求出其旋转90度的向量,和原始向量构成一组基可求的与原始向量成任意角度的新向量。
对于三维向量:
矩阵方法:(假设向量皆为单位向量)
将原始向量P绕任意轴A旋转任意角度:
1. 首先沿着该轴将向量分解为沿轴的分量Y和垂直轴的分量C,因为平行于轴的分量在旋转过程中不变,我们只用考虑垂直轴的分量C:
Y:(A⋅P)A
C:P−Y
2. 计算得到垂直A且包含C的平面,则可以在该平面内做二维旋转变换
3. 将旋转后的向量加上Y即得到最后结果
P′=Pcosθ+(A×P)sinθ+A(A⋅P)(1−cosθ)
四元数方法:
四元数介绍:
q=<w,x,y,z>=w+xi+yj+zk 或者 q=s+v
q¯=s−v
q1