cocos 获得2个点形成的线段的角度
2016-06-21 20:06
357 查看
var po = touch.getLocation()
var centerPoint = cc.p(cc.winSize.width>>1, cc.winSize.height>>1)
//--
var o = po.x-sp1.x
var a = po.y-sp1.y
var at = Math.atan(o / a) * 180 / Math.PI
if (a < 0) {
if (o < 0)
at = 180 + Math.abs(at);
else
at = 180 - Math.abs(at);
}
at-= 90 //物体初始是水平摆放
sp1.runAction(cc.rotateTo(1, at))
//--------------------------2---------------------------------
onLoad: function () {
this.main.on(cc.Node.EventType.TOUCH_START, this.changeHandRotate.bind(this))
},
changeHandRotate:function (params) {
var po1 = this.hand.getPosition()
po1 = this.main.convertToWorldSpaceAR(po1)
po1 = cc.pSub(params.getLocation(), po1)
var at = cc.radiansToDegrees(cc.pAngleSigned(po1, cc.p(0,1)))
this.hand.rotation = at
}
var centerPoint = cc.p(cc.winSize.width>>1, cc.winSize.height>>1)
//--
var o = po.x-sp1.x
var a = po.y-sp1.y
var at = Math.atan(o / a) * 180 / Math.PI
if (a < 0) {
if (o < 0)
at = 180 + Math.abs(at);
else
at = 180 - Math.abs(at);
}
at-= 90 //物体初始是水平摆放
sp1.runAction(cc.rotateTo(1, at))
//--------------------------2---------------------------------
onLoad: function () {
this.main.on(cc.Node.EventType.TOUCH_START, this.changeHandRotate.bind(this))
},
changeHandRotate:function (params) {
var po1 = this.hand.getPosition()
po1 = this.main.convertToWorldSpaceAR(po1)
po1 = cc.pSub(params.getLocation(), po1)
var at = cc.radiansToDegrees(cc.pAngleSigned(po1, cc.p(0,1)))
this.hand.rotation = at
}
相关文章推荐
- cocos-圆周运动 物理方法
- cocos-内存管理之sprite材质
- cocos-九宫格数据切割
- Cocos2d-x中CCSprite的Create流程--h
- cocos2dx CCUserDefault
- Cocos2d-JS 相关文章
- cocos2dx JNI DETECTED ERROR IN APPLICATION: illegal class name 'XXX'的错误修复
- cocos2dx常见的46中+22中动作详解
- 从cocos2dx源代码看android和iOS跨平台那些事
- 关于 error C2039: “create”: 不是“cocos2d::GLView”的成员的解决方法
- cocos listview 删除的3种方案
- Cocos开发VR菜鸟宝典 第六讲:操控设备的接入
- cocos阻挡层
- Cocos2d-Js ctor init onEnter的区别
- iOS和android游戏纹理优化和内存优化(cocos2d-x)
- cocos 单循环-按钮列表位置摆放
- cocos-抛物线运动
- cocos-笔记-判断方向-屏幕
- COCOS官网文档
- [zz]cocos2d-x如何优化内存的应用