本文来自http://blog.csdn.net/runaying ,引用必须注明出处!
cocos2d-X 节点(CCSpriteFrame.h..)API
///cocos2d-x-3.0alpha0/cocos2dx/sprite_nodes #ifndef __SPRITE_CCSPRITE_FRAME_H__ #define __SPRITE_CCSPRITE_FRAME_H__ #include "base_nodes/CCNode.h" #include "CCProtocols.h" #include "cocoa/CCObject.h" #include "cocoa/CCGeometry.h" NS_CC_BEGIN class Texture2D; /** * @addtogroup sprite_nodes * @{ */ /** @brief 一个 SpriteFrame 有: - texture: Sprite 将使用的 Texture2D - rectangle: texture 的尺寸 你可以修改框架做一些其他的事情: SpriteFrame *frame = SpriteFrame::frameWithTexture(texture, rect, offset); sprite->setDisplayFrame(frame); */ class CC_DLL SpriteFrame : public Object, public Clonable { public: /** 使用 filname 、rect 创建一个 SpriteFrame 假定 frame 没有被修改 */ static SpriteFrame* create(const char* filename, const Rect& rect); /** 使用 filname 、rect、rotated(旋转)、offset、originalSize(原始大小) 创建一个 originalSize 是 frame 被修改前的尺寸(以像素为单位) */ static SpriteFrame* create(const char* filename, const Rect& rect, bool rotated, const Point& offset, const Size& originalSize); /** 使用 texture 和 rect 创建一个 SpriteFrame 假定 frame 没有被修改 */ static SpriteFrame* createWithTexture(Texture2D* pobTexture, const Rect& rect); /** 使用 texture, rect, rotated, offset 、 originalSize 创建一个 SpriteFrame originalSize 是 frame 被修改前的尺寸(以像素为单位) */ static SpriteFrame* createWithTexture(Texture2D* pobTexture, const Rect& rect, bool rotated, const Point& offset, const Size& originalSize); /** * @js NA * @lua NA */ virtual ~SpriteFrame(void); /** 使用 texture 和 rect 初始化一个 SpriteFrame 假定 frame 没有被修改 */ bool initWithTexture(Texture2D* pobTexture, const Rect& rect); /** 使用 filname 、rect 初始化一个 SpriteFrame 假定 frame 没有被修改 */ bool initWithTextureFilename(const char* filename, const Rect& rect); /** 使用 texture, rect, rotated, offset 、 originalSize 初始化一个 SpriteFrame originalSize 是 frame 被修改前的尺寸(以像素为单位) */ bool initWithTexture(Texture2D* pobTexture, const Rect& rect, bool rotated, const Point& offset, const Size& originalSize); /** 使用 filname 、rect、rotated(旋转)、offset、originalSize(原始大小) 初始化一个 originalSize 是 frame 被修改前的尺寸(以像素为单位) @since v1.1 */ bool initWithTextureFilename(const char* filename, const Rect& rect, bool rotated, const Point& offset, const Size& originalSize); // 属性 inline const Rect& getRectInPixels() const { return _rectInPixels; } void setRectInPixels(const Rect& rectInPixels); inline bool isRotated(void) const { return _rotated; } inline void setRotated(bool bRotated) { _rotated = bRotated; } /** get frame 的尺寸(矩形)*/ inline const Rect& getRect(void) const { return _rect; } /** set frame 的尺寸(矩形) */ void setRect(const Rect& rect); /** get frame 的 offset */ const Point& getOffsetInPixels(void) const; /** set frame 的 offset */ void setOffsetInPixels(const Point& offsetInPixels); /** get 图像裁剪后的原始大小 */ inline const Size& getOriginalSizeInPixels(void) const { return _originalSizeInPixels; } /** set 图像裁剪后的原始大小*/ inline void setOriginalSizeInPixels(const Size& sizeInPixels) { _originalSizeInPixels = sizeInPixels; } /** get 图像裁剪后的原始大小 */ inline const Size& getOriginalSize(void) const { return _originalSize; } /** set 图像裁剪后的原始大小 */ inline void setOriginalSize(const Size& sizeInPixels) { _originalSize = sizeInPixels; } /** get frame 的 texture */ Texture2D* getTexture(void); /** set frame拥有 的 texture */ void setTexture(Texture2D* pobTexture); const Point& getOffset(void) const; void setOffset(const Point& offsets); // Overrides virtual SpriteFrame *clone() const override; protected: Point _offset; Size _originalSize; Rect _rectInPixels; bool _rotated; Rect _rect; Point _offsetInPixels; Size _originalSizeInPixels; Texture2D *_texture; std::string _textureFilename; }; // end of sprite_nodes group /// @} NS_CC_END #endif //__SPRITE_CCSPRITE_FRAME_H__