Cocos Creator 坐标系

版本:2.3.4

参考
cocos教程:坐标系和变换

 

cocos的坐标系和其他引擎不一样。

 

Egret中坐标系

舞台的原点在左上角

组件的原点也在左上角

角度顺时针旋转为正数,逆时针旋转为负数

Cocos Creator 坐标系

 

 

Laya中坐标系

和Egret一致

Cocos Creator 坐标系

 

 

Cocos坐标系

和Laya、Egret的y轴朝下的,cocos的y轴是朝上的。

角度顺时针是负数,逆时针是正数。

而且cocos新建组件锚点0.5居中

Cocos Creator 坐标系

 

 

因为canvas是锚点居中的,button组件锚点也是居中的。假如canvas宽高960x640,那么当前button的局部坐标是(0,0), 那么获取button的世界坐标是(480,320),世界坐标是从左下角开始计算

 

获取button的世界坐标

button.parent.convertToWorldSpaceAR(new cc.Vec2(button.x, button.y))

 

还有一个比较蛋疼的问题,cocos里摆组件时,没有辅助线。

所以出道题。在canvas居中的情况下,你想把一个canvas下按钮摆到离canvas左下角(100,100)的位置,按钮的x,y应该设置为多少。

button.x = -canvas.width/2 + 100 
button.y = -canvas.height/2 + 100