您的位置:首页 > 移动开发 > Cocos引擎

Cocos2d坐标系详解

2014-05-11 19:17 459 查看
1、笛卡尔坐标系
左手坐标系(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视图的可视区域起点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: