Cocos2d-x中的坐标系
绘图坐标系。它是最常见的坐标系,与OpenGL采用的坐标系相同,以左下角为原点,向右为x轴正方向,向上为y轴正方 向,如图 3-1 所示。在 Cocos2d-x 中,一切绘图相关的操作都使用绘图坐标系,如游戏元素中的 Position 和 AnchorPoint 等属性。
纹理坐标系。纹理坐标系以左上角为原点,向右为x轴正方向,向下为y轴正方向,如图3-2所示。在Cocos2d-x中,只
有从纹理中截取部分矩形时才使用这个坐标系,如 CCSprite 的 TextureRect 属性。
CCRect ContentSize:获取或设置此节点的内容大小。任何一个节点都需要确定它的内容大小,以便进行图形变换。对于
-
对于场景或层等大型节点,它们的IgnoreAnchorPointForPosition属性为true,此时引擎会认为AnchorPoint永远为(0,0);
而其他节点的该属性为 flase,它们的锚点不会被忽略。
-
float Rotation:获取或设置节点的旋转角度。节点以自己的锚点为中心顺时针旋转一定量,单位是角度。旋转角度可以 是任意实数。
-
floatScale(以及floatScaleX与floatScaleY):Scale用于获取或设置节点的缩放比例。节点以锚点为中心缩放该 比例。Scale 的值代表整体缩放比例,而 ScaleX 与 ScaleY 分别代表 X 方向与 Y 方向的缩放比例。默认情况下,这三个属性 的值都是 1,表示节点不被缩放。如果设置 Scale 属性,则 ScaleX 和 ScaleY 都会随之变为相同的值。当然,我们也可以给 ScaleX 与 ScaleY 设置不同的值,那样 Scale 属性的值就没有意义了。
CCArray* Children |
获取保存了该节点所有子引用的数组 |
CCNode* Parent |
获取或设置该节点的父节点 |
CCCamera* CameraRETURN |
获取或设置该节点的摄像机状态。摄像机 (CCCamera)定义了绘制该节点时的视点, 通常用于实现特效 |
CCGridBase* Grid |
获取或设置该节点的网格特效状态。网格应用 于绘图平面上,可以实现水纹等3D特效 |
CCGLProgram* ShaderProgram |
获取或设置该节点的Shader程序。CCGLProgram 是OpenGL的glProgram的封装 |
CCActionManager*ActionManager |
获取或设置该节点所使用的动作管理器。当为节 |
46
Cocos2d-x 高级开发教程
CCScheduler* Scheduler |
获取或设置该节点所使用的计时器管理器。 当为节点设置了新的计时器管理器时, |
方法 |
描述 |
addChild(CCNode* child) |
把child添加到当前节点之中 |
removeFromParentAndCleanup (bool cleanup) |
把当前节点从其父节点中移除,如果 cleanup为true,则执行clean方法 |
removeChild(CCNode* child, bool cleanup) |
从当前节点中移除child节点,如果 |
removeChildByTag(int tag, bool cleanup) |
从当前节点中移除标号为tag的节点 |
removeAllChildrenWithCleanup (bool cleanup) |
移除当前节点的所有子节点 |
getChildByTag(int tag) |
返回当前节点中标号为tag的节点 |
cleanup |
停止此节点的全部动作与计时器 |