zoukankan      html  css  js  c++  java
  • cocos2.2.3中创建精灵对象的三大类方法

    1.众生相,皆精灵

    2.精灵的类继承关系

    class CCSprite : public CCNode, public CCNodeRGBA, public CCTextureProtocol

    3.创建精灵的三大类方法

    4.代码实现

    /**
         * Creates an empty sprite without texture. You can call setTexture method subsequently.
         *
         * @return An empty sprite object that is marked as autoreleased.
         */
     1.1  static CCSprite* create();
    
    /**
         * Creates a sprite with an image filename.
         *
         * After creation, the rect of sprite will be the size of the image,
         * and the offset will be (0,0).
         *
         * @param   pszFileName The string which indicates a path to image file, e.g., "scene1/monster.png".
         * @return  A valid sprite object that is marked as autoreleased.
         */
      1.2  static CCSprite* create(const char *pszFileName);
    
     /**
         * Creates a sprite with an image filename and a rect.
         *
         * @param   pszFileName The string wich indicates a path to image file, e.g., "scene1/monster.png"
         * @param   rect        Only the contents inside rect of pszFileName's texture will be applied for this sprite.
         * @return  A valid sprite object that is marked as autoreleased.
         */
      1.3  static CCSprite* create(const char *pszFileName, const CCRect& rect);
    
     /**
         * Creates a sprite with an exsiting texture contained in a CCTexture2D object
         * After creation, the rect will be the size of the texture, and the offset will be (0,0).
         *
         * @param   pTexture    A pointer to a CCTexture2D object.
         * @return  A valid sprite object that is marked as autoreleased.
         */
      2.1  static CCSprite* createWithTexture(CCTexture2D *pTexture);
    
     /**
         * Creates a sprite with a texture and a rect.
         *
         * After creation, the offset will be (0,0).
         *
         * @param   pTexture    A pointer to an existing CCTexture2D object.
         *                      You can use a CCTexture2D object for many sprites.
         * @param   rect        Only the contents inside the rect of this texture will be applied for this sprite.
         * @return  A valid sprite object that is marked as autoreleased.
         */
      2.2  static CCSprite* createWithTexture(CCTexture2D *pTexture, const CCRect& rect);
    
    /**
         * Creates a sprite with an sprite frame.
         *
         * @param   pSpriteFrame    A sprite frame which involves a texture and a rect
         * @return  A valid sprite object that is marked as autoreleased.
         */
      3.1 static CCSprite* createWithSpriteFrame(CCSpriteFrame *pSpriteFrame);
    
    /**
         * Creates a sprite with an sprite frame name.
         *
         * A CCSpriteFrame will be fetched from the CCSpriteFrameCache by pszSpriteFrameName param.
         * If the CCSpriteFrame doesn't exist it will raise an exception.
         *
         * @param   pszSpriteFrameName A null terminated string which indicates the sprite frame name.
         * @return  A valid sprite object that is marked as autoreleased.
         */
       3.2 static CCSprite* createWithSpriteFrameName(const char *pszSpriteFrameName);
        
  • 相关阅读:
    JSON数据格式
    段寄存器
    进程 PCB 进程挂起
    python3:文件读写+with open as语句(转)
    Python 中 'unicodeescape' codec can't decode bytes in position XXX: trun错误解决方案
    intelx86为何从0xFFFF0处执行
    Linux内核调度分析(转,侵删)
    调度器简介,以及Linux的调度策略(转)
    nm命令
    Vim文本编辑器中常用的一些命令
  • 原文地址:https://www.cnblogs.com/ttss/p/4075379.html
Copyright © 2011-2022 走看看