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);
        
  • 相关阅读:
    原型prototype
    this
    作用域、闭包、模块
    嵌入式面试资料
    一些嵌入式面试题目的集锦
    优先级反转
    struct和union的区别
    (转)typedef和#define的用法与区别
    const 和 #define区别
    白话经典算法系列之 快速排序 快速搞定
  • 原文地址:https://www.cnblogs.com/ttss/p/4075379.html
Copyright © 2011-2022 走看看