坐标旋转的公式

感觉计算几何还是一如既往地不会
如果这样的话,比赛出了简单的计算几何就会很亏。。
并且听说ACM很多计算几何
那还是学点皮毛吧(雾
反正出了我也不会
这个东西感觉还是很常用的啊
并且推导也很简单

点的旋转

在这里插入图片描述
比如说这个图,由A点旋转到B点
首先,可以知道,长度 r r 肯定是不会变的
于是我们先表示出 r r
r c o s α = x rcosα=x
r s i n α = y rsinα=y
尝试表示 ( s , t ) (s,t)
s = r c o s ( α + β ) = r c o s α c o s β + r s i n α s i n β = x c o s β y s i n β s=rcos(α+β)=rcosαcosβ+rsinαsinβ=xcosβ-ysinβ
t = r s i n ( α + β ) = r s i n α c o s β + r c o s α s i n β = y c o s β + x s i n β t=rsin(α+β)=rsinαcosβ+rcosαsinβ=ycosβ+xsinβ

坐标系的旋转

可以用同样的方法推导
但其实,坐标系的旋转就相当于点往相反的方向旋转
把上面的 β β 改为 β 就可以了
可以得到
s = r c o s ( α + β ) = r c o s α c o s β + r s i n α s i n β = x c o s β y s i n β = x c o s β + y s i n β s=rcos(α+β')=rcosαcosβ'+rsinαsinβ'=xcosβ'-ysinβ'=xcosβ+ysinβ
t = r s i n ( α + β ) = r s i n α c o s β + r c o s α s i n β = y c o s β + x s i n β = y c o s β x s i n β t=rsin(α+β')=rsinαcosβ'+rcosαsinβ'=ycosβ'+xsinβ'=ycosβ-xsinβ

猜你喜欢

转载自blog.csdn.net/qq_36797743/article/details/85680195