加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于cocos2d-x中弧度和角度的转换问题

发布时间:2020-12-14 16:32:47 所属栏目:百科 来源:网络整理
导读:在做地图项目时遇到了精灵在移动时无法变动朝向的问题,想着如何才能根据触摸点来改变精灵的面相角度呢,在查阅了Cocos的API后,有了一下内容: 在cocos2dx中,提供了两个宏进行弧度和角度的互换(ccMacros.h) #define CC_DEGREES_TO_RADIANS(__ANGLE__) ((__

在做地图项目时遇到了精灵在移动时无法变动朝向的问题,想着如何才能根据触摸点来改变精灵的面相角度呢,在查阅了Cocos的API后,有了一下内容:

在cocos2dx中,提供了两个宏进行弧度和角度的互换(ccMacros.h)

#define CC_DEGREES_TO_RADIANS(__ANGLE__) ((__ANGLE__) * 0.01745329252f) // PI / 180 //此为角度转换为弧度
/** @def CC_RADIANS_TO_DEGREES
converts radians to degrees
*/ #define CC_RADIANS_TO_DEGREES(__ANGLE__) ((__ANGLE__) * 57.29577951f) // PI * 180 //此为弧度转换为角度


在C++中获取两个向量之间的弧度方法为:

ccpAngle(a,b); // 返回a,b向量指示角度的差的弧度值

在获取到弧度后,可以通过宏把弧度转为角度值,例如:

float a =ccpAngle(vec1,vec2);//弧度

float b =CC_RADIANS_TO_DEGREES(a);

以上是我简单的一些了解。

具体的实现方法还要继续去研究,有好的办法的话,希望可以在此处留下您的墨宝 o(∩_∩)o

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读