原文地址:Rotating Turrets: How To Make A Simple iPhone Game with Cocos2D 2.X Part 2
翻译有节选和删除.
在你旋转炮塔之前,首先你要计算出需要旋转的角度.
为了计算,回忆一下高中的三角学.还能记住助记词SOH CAH和TOA吗?它可以帮助你回忆三角形角的正切(Tangent)等于对边比临边,如下图所示:
就像上图显示的那样,你需要旋转的角度等于矩形的Y偏移除以X偏移.
不管怎样,这里有2件事需要记住:
首先,当你计算矩形(offY/offX)的时候,结果将是弧度,而Cocos2D都是以角度为单位来处理的.幸运的是Cocos2D提供了简单的转换宏供你使用.
第二,下图中角度在+/- 45度之间,在Cocos2D中正值表示顺时针旋转(非逆时针),就像如下图所示一样:
所以我们指出了正确的方向,你需要将你们的结果乘以-1.取个例子,如果你把上面图片的角度乘以-1,你将得到-45度,它表示逆时针旋转45度.
说的够多了,让我们开始写代码吧!