Cocos2d坐标系详解

来源:互联网 发布:三菱变频器软件 编辑:程序博客网 时间:2024/05/17 06:56
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视图的可视区域起点。



0 0
原创粉丝点击