旋转坐标转换的矩阵推导

预备知识

矩阵乘法

介绍略,去网上查吧

两角和(差)公式

推导

旋转变换一般是按照某个圆心点,以一定半径 旋转一定的角度α,为了简单起见我们给出下面的情景

假定点A(x,y)想经过旋转变换到达B(x',y'),已知旋转角度α和点A坐标,计算出点B


要计算点B则分别计算他的x'和y'分量

得出结果:

 

根据矩阵乘法计算规则,可以推出 

左侧矩阵第一行各个元素分别乘以右侧矩阵第一列,然后相加,是结果矩阵的第一行第一列的元素

左侧矩阵第二行各个元素分别乘以右侧矩阵第一列,然后相加,是结果矩阵的第二行第一列的元素

只要给出旋转角度,就能计算出矩阵,然后就可以用这个矩阵分别左乘每一个点,就能计算出这个点旋转后的点坐标 这样我们就可以通过矩阵变换坐标了 

 

如果是三维的话还得加个Z轴,多一个分量,矩阵也变成了3x3的,但是大概原理差不多,这里只做简单地原理分析,如果想计算三维点的坐标变换自己手动吧!!

关于OpenGL中矩阵详解 强烈推荐!!!

posted @ 2014-11-25 19:46  luweimy  阅读(3197)  评论(4编辑  收藏  举报