1.众生相,皆精灵

2.精灵的类继承关系

class CCSprite : public CCNode, public CCNodeRGBA, public CCTextureProtocol

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

4.代码实现

  1. /**
  2. * Creates an empty sprite without texture. You can call setTexture method subsequently.
  3. *
  4. * @return An empty sprite object that is marked as autoreleased.
  5. */
  6. 1.1 static CCSprite* create();
  7.  
  8. /**
  9. * Creates a sprite with an image filename.
  10. *
  11. * After creation, the rect of sprite will be the size of the image,
  12. * and the offset will be (0,0).
  13. *
  14. * @param pszFileName The string which indicates a path to image file, e.g., "scene1/monster.png".
  15. * @return A valid sprite object that is marked as autoreleased.
  16. */
  17. 1.2 static CCSprite* create(const char *pszFileName);
  18.  
  19. /**
  20. * Creates a sprite with an image filename and a rect.
  21. *
  22. * @param pszFileName The string wich indicates a path to image file, e.g., "scene1/monster.png"
  23. * @param rect Only the contents inside rect of pszFileName's texture will be applied for this sprite.
  24. * @return A valid sprite object that is marked as autoreleased.
  25. */
  26. 1.3 static CCSprite* create(const char *pszFileName, const CCRect& rect);
  27.  
  28. /**
  29. * Creates a sprite with an exsiting texture contained in a CCTexture2D object
  30. * After creation, the rect will be the size of the texture, and the offset will be (0,0).
  31. *
  32. * @param pTexture A pointer to a CCTexture2D object.
  33. * @return A valid sprite object that is marked as autoreleased.
  34. */
  35. 2.1 static CCSprite* createWithTexture(CCTexture2D *pTexture);
  36.  
  37. /**
  38. * Creates a sprite with a texture and a rect.
  39. *
  40. * After creation, the offset will be (0,0).
  41. *
  42. * @param pTexture A pointer to an existing CCTexture2D object.
  43. * You can use a CCTexture2D object for many sprites.
  44. * @param rect Only the contents inside the rect of this texture will be applied for this sprite.
  45. * @return A valid sprite object that is marked as autoreleased.
  46. */
  47. 2.2 static CCSprite* createWithTexture(CCTexture2D *pTexture, const CCRect& rect);
  48.  
  49. /**
  50. * Creates a sprite with an sprite frame.
  51. *
  52. * @param pSpriteFrame A sprite frame which involves a texture and a rect
  53. * @return A valid sprite object that is marked as autoreleased.
  54. */
  55. 3.1 static CCSprite* createWithSpriteFrame(CCSpriteFrame *pSpriteFrame);
  56.  
  57. /**
  58. * Creates a sprite with an sprite frame name.
  59. *
  60. * A CCSpriteFrame will be fetched from the CCSpriteFrameCache by pszSpriteFrameName param.
  61. * If the CCSpriteFrame doesn't exist it will raise an exception.
  62. *
  63. * @param pszSpriteFrameName A null terminated string which indicates the sprite frame name.
  64. * @return A valid sprite object that is marked as autoreleased.
  65. */
  66. 3.2 static CCSprite* createWithSpriteFrameName(const char *pszSpriteFrameName);

cocos2.2.3中创建精灵对象的三大类方法的更多相关文章

  1. 通常Struts框架会自动地从action mapping中创建action对象

    开发者不必在Spring中去注册action,尽管可以这么去做,通常Struts框架会自动地从action mapping中创建action对象 struts2-spring-plugin-x-x-x ...

  2. JavaScript中创建字典对象(dictionary)实例

    这篇文章主要介绍了JavaScript中创建字典对象(dictionary)实例,本文直接给出了实现的源码,并给出了使用示例,需要的朋友可以参考下 对于JavaScript来说,其自身的Array对象 ...

  3. 简单使用JSON,JavaScript中创建 JSON 对象(一)

    JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小.更快,更易解析. ...

  4. SpriteBuilder中CCB精灵对象的Sprite frame为什么有时候不能修改

    有时候你会发现CCB中的精灵对象(root节点)的Sprite frame是灰色的,不能修改.因为它是根对象,所以不存在被嵌入其他CCB的情况,那到底是什么原因呢? 可以发现此时的Timeline当前 ...

  5. Java中创建实例化对象的几种方式

    Java中创建实例化对象有哪些方式? ①最常见的创建对象方法,使用new语句创建一个对象.②通过工厂方法返回对象,例:String s =String.valueOf().(工厂方法涉及到框架)③动用 ...

  6. Java中创建的对象多了,必然影响内存和性能

    1, Java中创建的对象多了,必然影响内存和性能,所以对象的创建越少越好,最后还要记得销毁.

  7. spring中创建bean对象的三种方式以及作用范围

    时间:2020/02/02 一.在spring的xml配置文件中创建bean对象的三种方式: 1.使用默认构造函数创建.在spring的配置文件中使用bean标签,配以id和class属性之后,且没有 ...

  8. 本地C代码中创建Java对象

    作者:唐老师,华清远见嵌入式学院讲师. 创建Java域的对象就是创建Java类的实例,再调用Java类的构造方法. 以Bitmap的构建为例,Bitmap中并没有Java对象创建的代码及外部能访问的构 ...

  9. R中创建not-yet-evaluated对象

    create not-yet-evaluated object在R中创建 not-yet-evaluated(就是some code we will evaluated later!!)对象;然后执行 ...

随机推荐

  1. Part 1 some difference from asp.net to asp.net mvc4

    Part 1 some difference from asp.net to asp.net mvc4 In MVC URL's are mapped to controller Action Met ...

  2. IIS 配置

    1.上次遇到一个问题:建了一个WebService服务浏览的时候,弹出了一个身份验证的框. 启用了IUSR_SERVER之后,还是还是不行. 然后到计算机的安全策略->从网络访问些计算机,发现已 ...

  3. vpn连接成功后,本地无法连接外网

    把在远程网络上使用默认网关前面的对勾取消掉,确定就ok啦...

  4. Cisco模拟器使用和静态路由配置

    一. 模拟器使用 网络拓扑图 1. 模拟器搭建环境及网络结构 2. 使用ios系统加载并配置 3. 加载3745ios后计算pc值以减小cpu的消耗 4. 然后使用CTRL+]+i得到最大的一个值(如 ...

  5. Cocos2d-x中的字符串

    在Cocos2d-x中能够使用的字符串constchar*.std::string和cocos2d::__String等,其中const char*是C风格的字符串,std::string是C++风格 ...

  6. 理解C#系列 / C#语言的特性

    C#语言的特性 大多数语句都已(;)结尾 用({})定义语句块 单行注释(//),多行注释(/*......*/)智能注释(///) 区分大小写 用namespace名称空间对类进行分类 在C#中的所 ...

  7. JS运动学习笔记 -- 任意值的运动框架(高/宽度,背景颜色,文本内容,透明度等)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. transport

    #include<iostream> using namespace std; int transport(int a) { ; ) ; else a=a/; d=; ) { a=a*+; ...

  9. Firefox 与 IE 对Javascript和CSS的区别

    1. document.formName.item("itemName") 问题 说明:IE下,可以使用document.formName.item("itemName& ...

  10. ADO.NET笔记——带参数的查询防止SQL注入攻击

    相关知识: 把单引号替换成两个单引号,虽然能起到一定的防止SQL注入攻击的作用,但是更为有效的办法是把要拼接的内容做成“参数” SQLCommand支持带参数的查询,也就是说,可以在查询语句中指定参数 ...