好记性不如铅笔头

C && C++, cocos2dx, 编程

cocos2dx:获取三点的角度

最近项目中用到了cocos2dx来开发一个基于陀螺仪的demo,忙了半个星期,一边学习一边开发,总算搞了出来。这里备份下开发中学习到的一些cocos2dx知识。

CONTENTS

获取三点间的角度:

当我们手指在屏幕上滑动时,我们想获取滑动手指在指定点的偏移角度,用来实现类似转盘的效果,如下:

比如,当我的手指从B点滑动到C点,我希望得到BC两点针对于A点的夹角,即AB和AC两条线的夹角。

作者这里使用了一个比较笨的方法,通过在A点画出一条水平线,将夹角计算为角1 – 角2。

精简代码如下:

float angle1 = ccpToAngle(ccpSub(B, A));
float angle2 = ccpToAngle(ccpSub(C, A));
float angle = (angle1 - angle2) * 180 / 3.14;

 备注:

其他的cocos2dx计算宏:

http://www.cnblogs.com/buaashine/archive/2012/11/12/2765691.html

发表评论

1 + 5 =

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据