1、笛卡尔坐标系
左手坐标系(Direct3D坐标系),右手坐标系(Direct3D坐标系)
大拇指和食指分别相应x轴和y轴
2、UI坐标系
iOS/Android/Windows SDK中的通用UI坐标系
1)起点坐标(x=0, y=0)位于左上角
2)X轴从屏幕最左边開始。由左向右渐增
左手坐标系(Direct3D坐标系),右手坐标系(Direct3D坐标系)
大拇指和食指分别相应x轴和y轴
2、UI坐标系
iOS/Android/Windows SDK中的通用UI坐标系
1)起点坐标(x=0, y=0)位于左上角
2)X轴从屏幕最左边開始。由左向右渐增
3)Y轴坐标从屏幕最上方開始,由上向下渐增
3、2d世界中我们使用xy轴的坐标系
起点坐标(x=0, y=0)位于左下角,这意味着屏幕位于
X轴从屏幕最左边開始,由左向右渐增
Y轴坐标从屏幕最下方開始。由下向上渐增
4、因为每一个类都继承自CCNode(cocos2d-x的最顶层类),所以每一个类都会默认有anchorPoint属性。
当我们在一个位置画一个的对象的时候,cocos2d-x会合并属性位置和anchorPoint。当然,当旋转
一个对象时,cocos2d-x会环绕绕anchorPoint旋转的。
比对以下两幅图片
// create sprite CCSprite* sprite = CCSprite::create("bottomleft.png"); sprite->setAnchorPoint(ccp(0, 0));// Anchor Point sprite->setPosition(ccp(0,0)); addChild(sprite);
CCSprite* sprite = CCSprite::create("center.png"); sprite->setAnchorPoint(ccp(0.5, 0.5));// Anchor Point sprite->setPosition(ccp(0,0)); addChild(sprite);
获取可视区域大小, 获取可视区域起点 vs 获取窗体大小
getVisibleSize
getVisibleOrigin
getWinSize
VisibleSize(可视区域大小)会返回此点的OpenGL视图的可视区域大小。假设没有调用
CCEGLView::setDesignResolutionSize()的话,此值等于getWinSize的大小。
getVisibleOrigin(获取可视区域起点)会返回此点的OpenGL视图的可视区域起点。