• cocos2d-x 3.2锚点,Point,addchild,getcontensize


    一,锚点

       打个比方。在墙挂一幅画时,要钉一个钉子,那个钉子就是锚点。

               然后挂图时,钉子(锚点)放在要订的位置(position),订下去。完成(贴图结束)。

        贴图的基本点,锚点默认为(0.5,0.5),也就是图片的中心。锚点(1,1)就是图片的右上角(1为单位)。

    锚点在图片左下角,再往左半个长,往下半个宽

    二、Point

    在VS里转到定义

    可以看到Point等价于Vec2,就是一个坐标点。比如(100,100)为Point(100,100),也是Vec2(100,100)


    三、addchild

    分析下列三个重载

    addChild()有三个参数:

    1、要加入场景的对象的指针,(可以是Sprite*,Layer*,Node*等类型)

    2、绘制层的顺序,默认参数值为0,表示最高优先层导入,该值越大表示该层在最后加载(在最高一层), 一般背景图层是首先加载,其他元素在加载在背景层上面。因为背景在后面加载的话,会覆盖掉前面 加载的元素,看不到想要的图层组合效果。

    3、Tag标记。赋予类的某个方法中定义的局部变量(CCNode*类型对象,CCSprite*对象等)一个标记号ta g,如果以后在该类的其他方法中要访问这个变量时可以通过调用函数getChildByTag来取回该对象,从而 方便使用这个对象进行想要的操作。这样做的好处是:定义成类的成员变量会一直占用内存资源,而局部 变量的生命周期比成员变量短,节省系统资源,而且在外面就可以通过函数getChildByTagtag号来获取这 个对象。

    代码实例:

    CCSprite *sp1 = (CCSprite*)this->getChildByTag(tag),然后可以再下面的代码中对该精灵对象进行访问 加动作等等。

    四、getContentSize()

    getContentSize很容易理解,就是获取到当前物体的大小,但是要注意是本身大小,无论是是缩放还是缩小了,其获取的还是它原来的本身大小。所以放到后还是打印出100*100大小

    getVisibleSize:获得视口(可视区域)的大小



  • 相关阅读:
    彻底搞清分库分表(垂直分库,垂直分表,水平分库,水平分表)
    linux服务器上tcp有大量time_wait状态的解决方法和原因解释
    mysql,既可以自己的字段相乘,也可以乘固定的字段
    vscode 滚动设置字体大小
    nodejs 定时任务 node-schedule 库
    Node.js中的环境变量
    js 打印错误堆栈
    springboot 返回的json中忽略null属性值,不传递
    idea跳转到指定行列快捷键
    Spring boot + MyBatis返回map中null值处理
  • 原文地址:https://www.cnblogs.com/chz-blogs/p/9381034.html
Copyright © 2020-2023  润新知