CCSPrite Class Reference(CCSprite 類參考手冊)

CCSprite 是一個2d的圖像,

#incude<CCSprite.h>

CCSprite類的繼承圖表如下:


詳細成員列表參見:http://www.cocos2d-x.org/embedded/cocos2d-x/d4/de7/classcocos2d_1_1_c_c_sprite.html

詳細描述:

         CCSprite是個2D的圖像。

         CCSprite可以用圖形或者圖像的一部分記性創建。

   如果其父親或者任何祖先是CCSpriteBathNode,那麼他將有以下特性或限制。

         特性(當其父類爲CCBatchNode): 

                當CCSpriteBathNode包含很多孩子的時候,顯示速度特別快。所有的孩子將一次繪製。

         限制:

               不再支持相機了,如CCOrbitCamera的行爲就不能工作。

               不再支持GridBase行爲,如CCLens,CCRipple,CCTwirl

               不能單獨的設置aliased 屬性,因爲Alias和Antialias 屬性屬於CCSPriteBathNode。

           不能單獨的設置Blending 函數,因爲Blending   函數屬於CCSPriteBathNode。

           不支持垂直滾動條,但可以被模擬爲一個代理精靈

  如果其父類是標準的CCNode,那麼CCSprite行爲則具備所有CCNode的行爲。

       支持blending 函數

       支持aliasing 和antialiasing

       但是顯示將會變慢,因爲每次只繪製一個孩子。


CCSprite默認的錨點是(0.5,0.5)


一些函數的介紹:

virtual void addChild(CCNode * child);

     添加一個孩子到容器中,z-order 爲0

     如過孩子添加到正在運行的節點,那麼OnEnter 和OnEnterTransitionDidFinish 將會立刻執行。

     V0.7.1以上纔有該函數,繼承自CCNode

virtual void addChild(CCNode * child,int zOrder);

    添加一個孩子到容器中,並設置z-order 。其他功能同addChild函數 

virtual void draw (void)

    重寫這個方法用來繪製自己的節點

    如下GL_states將默認能使用

           glEnableClientState(GL_VERTEX_ARRAY);
           glEnableClientState(GL_COLOR_ARRAY);
           glEnableClientState(GL_TEXTURE_COORD_ARRAY);
           glEnable(GL_TEXTURE_2D);

    並且你不能禁用他們,直到你繪製完你的節點。

bool initWithFile(const char * pszFileName)

      用圖像的文件名來初始化一個sprite,大小爲圖像的大小,偏移爲(0,0)

bool initWithFile(const char * pszFileName,const CCRect &rect)

     用圖像的文件名 和大小來初始化一個sprite,偏移爲(0,0)

bool initWithtexture(CCTexture2D * pTexture)

     用文本初始化一個sprite,sprite的大小爲文本的大小,偏移爲(0,0)

bool initWithTexture(CCTexture2D *pTexture,const CCRect & rect)

     用文本和大小初始化一個sprite,偏移爲(0,0)

bool isDirty(void)[inline]

     檢測這個sprite是否需要進行更新。

virtual void removeAllChildrenWithCleanup(bool cheanup)

     從容器中移除所有的孩子,並根據cleanup參數進行清除正在運行的所有行爲。

virtual void removeChild(CCNode *child,bool cleanup)

    從容器中移除指定的孩子,並根據cleanup參數進行清除正在運行的所有行爲。

 virtual void reorderChild(CCNode *child,int zOrder)

    根據zOrder進行重新定義一個孩子。前提孩子必須是已經添加的。

virtual void setAnchorPoint(const CCPoint & var)

    設置精靈自身的錨點。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章