cocos2d-x中的坐标系

1.屏幕坐标系,也叫uikit.原点在左上。

最关键的是触摸事件得到的是屏幕坐标系

2.OpenGL坐标系

坐标系的原点在左下

3.屏幕坐标系和OpenGl坐标系的转换

    //UIKit To OpenGL 

CCPoint convertToGL(const CCPoint& obPoint); //OpenGL To UIKit  CCPoint convertToUI(const CCPoint& obPoint); 

4.绝对坐标系和相对坐标系之间的转换

CCSprite* big=CCSprite::create("big.png"); 

big->setAnchorPoint(ccp(0,0)); big->setPosition(ccp(50,50));//设置在相对父节点的(50,50)位置  this->addChild(big);//屏幕是父节点 

 

     CCSprite*little=CCSprite::create(little.png");

     little->setAnchorPoint(ccp(0,0));

     little-setPosition(ccp(50,50));

    big->addChild(little);               //相对父节点的50,50,可是此时的父节点为大图

5.假设想要获得big和little的绝对坐标

CCPoint wp1=this->convertToWorldSpace(big->getPosition());

CCPoint wp2=big->convertToWorldSpace(little->getPosition());//wp2(100,100) 

6.绝对坐标系转换为相对坐标系

CCPoint pos=big->convertToNodeSpace(ccp(200,200));

CCPoint np2=little->convertToNodeSpace(ccp(200,200));//np2(100,100)

原文地址:https://www.cnblogs.com/twodog/p/12140601.html