cocos2d-x中的四种坐标
来源:互联网 发布:淘宝上怎么看积分 编辑:程序博客网 时间:2024/05/17 23:53
在cocos2d-x中一共有四种坐标:
(1)屏幕坐标系
在windows系统中,默认的原点在屏幕的左上角,X轴向右,Y轴向下。
(2)GL坐标系
原点在左下角,X轴向右,Y轴向上。由于cocos2d-x使用的是open gl渲染引擎,而不是directx 3d引擎,那么GL坐标系就不和屏幕坐标系重合,这是要注意的一点。因此,当我们调用了一个屏幕响应事件时,如ccTouchEnded(CCTouch* touch, CCEvent* event);
此时我们CCPoint location = touch->locationInView(touch->View)返回点击处在屏幕坐标系的位置,而不是GL坐标系。因此就有将屏幕坐标系转换成GL坐标系的函数。
CCPoing convertedLocation = CCDirector::sharedDirector()->convertToGL(location);
(3)本地坐标系
游戏中,每一个对象都有一个自己的坐标系,这些坐标系就叫做本地坐标系。
相对于父对象的坐标系,原点在左下角,X轴向右,Y轴向上。举个例子,以我自己作为坐标原点,那么在我附近(在我这个坐标系内)的对象就是子对象,而我就是父对象,这些子对象的位置都是本地坐标系,是相对于我(父对象)来说的。下面我举一个代码来做说明:
..........
CCLayer* layer = new CCLayer();
CCSprite* player = CCSprite::spriteWithFile("player.png");
layer->addChild(player, 1);
................
在这里,player对象就是子对象,layer就是父对象,那么player相对于layer的位置就是在本地坐标系中的位置。如果,layer(父对象)发生移动,就是我们说的背景移动,那么,player(子对象)也会跟着移动,但子对象在本地坐标系中的位置不变,改变的是子对象在世界坐标系中的位置。
(4)世界坐标系
世界坐标就是所谓的绝对坐标,所有的对象虽然都有自己的本地坐标系,但这些对象同样的在世界坐标系中也有一个坐标。例如,整个地球就是一个世界坐标系,在地球上的每一个人
(1)屏幕坐标系
在windows系统中,默认的原点在屏幕的左上角,X轴向右,Y轴向下。
(2)GL坐标系
原点在左下角,X轴向右,Y轴向上。由于cocos2d-x使用的是open gl渲染引擎,而不是directx 3d引擎,那么GL坐标系就不和屏幕坐标系重合,这是要注意的一点。因此,当我们调用了一个屏幕响应事件时,如ccTouchEnded(CCTouch* touch, CCEvent* event);
此时我们CCPoint location = touch->locationInView(touch->View)返回点击处在屏幕坐标系的位置,而不是GL坐标系。因此就有将屏幕坐标系转换成GL坐标系的函数。
CCPoing convertedLocation = CCDirector::sharedDirector()->convertToGL(location);
(3)本地坐标系
游戏中,每一个对象都有一个自己的坐标系,这些坐标系就叫做本地坐标系。
相对于父对象的坐标系,原点在左下角,X轴向右,Y轴向上。举个例子,以我自己作为坐标原点,那么在我附近(在我这个坐标系内)的对象就是子对象,而我就是父对象,这些子对象的位置都是本地坐标系,是相对于我(父对象)来说的。下面我举一个代码来做说明:
..........
CCLayer* layer = new CCLayer();
CCSprite* player = CCSprite::spriteWithFile("player.png");
layer->addChild(player, 1);
................
在这里,player对象就是子对象,layer就是父对象,那么player相对于layer的位置就是在本地坐标系中的位置。如果,layer(父对象)发生移动,就是我们说的背景移动,那么,player(子对象)也会跟着移动,但子对象在本地坐标系中的位置不变,改变的是子对象在世界坐标系中的位置。
(4)世界坐标系
世界坐标就是所谓的绝对坐标,所有的对象虽然都有自己的本地坐标系,但这些对象同样的在世界坐标系中也有一个坐标。例如,整个地球就是一个世界坐标系,在地球上的每一个人
- cocos2d-x中的四种坐标
- Cocos2d-X中的坐标
- 在cocos2d中的四种坐标
- Cocos2d-x中的坐标转换
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x 坐标系统
- Cocos2d-x坐标研究
- Cocos2d-x 坐标研究
- cocos2d-x坐标系统
- Cocos2d-x 坐标转换
- cocos2d-x 坐标研究
- Cocos2d-x 坐标转换
- cocos2d-x 坐标研究
- Cocos2d-x坐标研究
- android如何使得电阻屏在第一次开机时自动叫起屏幕校准程序
- UIButton 自定义
- 两个数相乘,小数点后位数没有限制,请写一个高精度算法
- android 如何安装/卸载APK(包括system apk和user apk)
- ArcGIS Runtime 本地API介绍(一)
- cocos2d-x中的四种坐标
- Android如何在Activity中调用Screen off 和 Screen on接口
- android如何把手机的默认主题修改成mtk slicer(纤薄主题)
- ArcGIS Runtime 本地API介绍(二)
- 关于python文件操作
- android 双SD卡切换(SD SWAP) 方案,如何恢复“设置->存储->默认存储器”的用户选择功
- ArcGIS Runtime 本地API介绍(三)
- 动态描述性编程实现计算器0~9这10个数字按钮的高亮显示并按下该键
- android如何确认一个应用程序的安装位置