Sprite(精灵)&& 三个特殊的层Layer
用来作为以后复习使用。 1 #include "ScenceScend.h" CCScene* ScenceScend::scene()
{
CCScene* s = CCScene::create();
ScenceScend* layer = ScenceScend::create();
s->addChild(layer);
return s; }
bool ScenceScend::init()
{
CCLayer::init();
//1.通过文件直接创建精灵
//CCSprite* sprite = CCSprite::create();
//CCSprite* sprite = CCSprite::create(filename,CCRect);
//CCSprite* sprite = CCSprite::create(filename); //2.通过纹理去创建精灵 //CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("filename");
//CCSprite* sprite = CCSprite::createWithTexture(texture);
//CCSprite* sprite = CCSprite::createWithTexture(texture,CCRect);也可取图片局部
//addChild(sprite);
//3通过精灵帧来创建
/*
CCSize size = CCDirector::sharedDirector()->getWinSize(); CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("HelloWorld.png");
CCSize size2 = texture->getContentSize();
CCSpriteFrame* frame =
CCSpriteFrame::createWithTexture(texture, CCRectMake(size2.height / 4, size2.width / 4, size2.width / 2, size2.width / 2));
CCSprite* sprite = CCSprite::createWithSpriteFrame(frame);
sprite->setPosition(size.width/2,size.height/2);
addChild(sprite);
*/ //4.通过精灵帧缓存 去创建精灵 CCSize size = CCDirector::getInstance()->getWinSize();
//CCTexture2D 贴图类
CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("HelloWorld.png");
CCSize size2 = texture->getContentSize();
CCSpriteFrame* frame =
CCSpriteFrame::createWithTexture(texture, CCRectMake(size2.height / , size2.width / , size2.width / , size2.width / ));
CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFrame(frame,"HXL");
CCSprite* sprite = CCSprite::createWithSpriteFrameName("HXL");
sprite->setPosition(size.width / , size.height / );
addChild(sprite); /*
//调用父类的初始化。因此这里是 子类方法覆盖父类了。
CCLayer::init();
CCLabelTTF *label = CCLabelTTF::create("hxltom","Arial",36);
label->setPosition(CCPoint(100,200));
addChild(label);
*/ return true;
}
三个特殊的层。
#include "example2.h" CCScene* example2::scene()
{
CCScene* s = CCScene::create();
example2* layer = example2::create();
s->addChild(layer);
return s; }
bool example2::init()
{
//CCLayerColor::init();
CCLayerColor::initWithColor(ccc4(,,,));
//CCLayerColor::init();默认也是黑色 //三个特殊的层。
/*
1.CCLayerColor 可改变layer的背景,设置层的大小
2.CCLayerGradient 有渐变效果的层
3.CCLayerMultiplex CCLayerColor::create(ccColor4B());
ccColor4B()这个类封装了颜色,里面有4个参数 r g b o o代表透明度
CCLayerColor::create(ccc4(255,0,0,255)); 红,绿,蓝,透明度 CCLayerGradient
*/ #if 0
//CCLayerColor !!!!!!!!!!!!
CCSize size = CCDirector::getInstance()->getWinSize();
CCLayerColor* layer = CCLayerColor::create(
ccc4(,,,),size.width/,size.height/
);
addChild(layer);
#endif #if 0
//CCLayerGradient 有渐变效果的层,透明度也可以渐变,渐变方向(第三个参数)
//渐变默认从上往下。cp(0,1)从底下往上渐变 cp(1,1)左下角到右上角
//CCLayerGradient* layer = CCLayerGradient::create(ccc4(255,0,0,255),ccc4(255,0,255,255));
//一开始设置渐变方向
CCLayerGradient* layer = CCLayerGradient::create(
ccc4(, , , ), ccc4(, , , ),
ccp(,)
);
/*
//生成之后改变渐变方向 (两种方式等价的)
CCLayerGradient* layer = CCLayerGradient::create(ccc4(255, 0, 0, 255), ccc4(255, 0, 255, 255));
layer->setVector(ccp(0,1));
addChild(layer);
*/ #endif //CCLayerMultiplex可以包含好几个层,但是只是显示其中一个
CCSize size = CCDirector::getInstance()->getWinSize();
CCLayerColor* layer1 = CCLayerColor::create(ccc4(,,,),size.width/,size.height/);
CCLayerGradient* layer2 = CCLayerGradient::create(ccc4(, , , ), ccc4(, , , ));
CCLayerMultiplex* layer = CCLayerMultiplex::create(layer1, layer2, NULL); layer->switchTo();//设置显示第一个
addChild(layer); setTouchEnabled(true);
setTouchMode(kCCTouchesOneByOne);
return true;
}
Sprite(精灵)&& 三个特殊的层Layer的更多相关文章
- Python游戏引擎开发(五):Sprite精灵类和鼠标事件
本次来实现Sprite类和鼠标事件. 说起这个Sprite啊,涉及过2D游戏研究领域的看官应该都听说过它. 它中文原意是"精灵",只是在不同人的眼中,它所表示的意义不同. 比方说在 ...
- Cocos2d-x Lua中Sprite精灵类
精灵类是Sprite,它的类图如下图所示. Sprite类图 Sprite类直接继承了Node类,具有Node基本特征.此外,我们还可以看到Sprite类的子类有:PhysicsSprite和Skin ...
- 弹出层layer的使用
弹出层layer的使用 Intro layer是一款web弹层组件,致力于服务各个水平段的开发人员.layer官网:http://layer.layui.com/ layer侧重于用户灵活的自定义,为 ...
- 吴恩达《深度学习》-课后测验-第一门课 (Neural Networks and Deep Learning)-Week 3 - Shallow Neural Networks(第三周测验 - 浅层神 经网络)
Week 3 Quiz - Shallow Neural Networks(第三周测验 - 浅层神经网络) \1. Which of the following are true? (Check al ...
- 吴恩达《深度学习》-第一门课 (Neural Networks and Deep Learning)-第三周:浅层神经网络(Shallow neural networks) -课程笔记
第三周:浅层神经网络(Shallow neural networks) 3.1 神经网络概述(Neural Network Overview) 使用符号$ ^{[
- layer弹出层 layer源码
下载源码:点击下载 ;!function(window, undefined){ "use strict"; var pathType = true, //是否采用自动获取绝对路径 ...
- Cocos2d-JS中的Sprite精灵类
精灵类是cc.Sprite,它的类图如下图所示.cc.Sprite类直接继承了cc.Node类,具有cc.Node基本特征. 创建Sprite精灵对象 创建精灵对象可以使用构造函数实现,它们接受相同的 ...
- 牛逼的 弹出层 layer !!!
功能强大,实用,操作方便,文档齐全. http://layer.layui.com/api.html 常用功能代码: <!doctype html> <html> <he ...
- 一个让你想到即可做到的web弹窗/层----Layer
Layer layer是一款近年来备受青睐的web弹层组件,她具备全方位的解决方案,致力于服务各水平段的开发人员,您的页面会轻松地拥有丰富友好的操作体验. 在与同类组件的比较中,layer总是 ...
随机推荐
- Gradle 刷新依赖
$ ./gradlew build --refresh-dependencies
- 一些NSArray,NSDictionary,NSSet相关的算法知识
iOS编程当中的几个集合类:NSArray,NSDictionary,NSSet以及对应的Mutable版本,应该所有人都用过.只是简单使用的话,相信没人会用错,但要做到高效(时间复杂度)精确(业务准 ...
- jQuery点击收缩展开滑动显示内容竖直手风琴代码
<div class="position"> <div class="positiontop"> <span class=&quo ...
- Linux 下多用户申请git公钥方法
问题:目前大家多是通过root用户来登录编译机,导致各自生成的公钥相互覆盖,而导致无法无法多人同时使用 解决方法: 登陆编译机添加用户 # useradd -m a00123456 进入切换为自己 ...
- zjuoj 3780 Paint the Grid Again
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3780 Paint the Grid Again Time Limit: 2 ...
- 用c的数组简单的模拟了入栈
其实很简单,只要控制住输出时倒输出.且只输出一个 #include <stdio.h>#include <stdlib.h>int zhan[20];int n=-1;void ...
- Android 主题切换 小结
前言 我们用手机的时候经常看到 设置里面有夜间模式和白天模式来更换APP的主题,以前以为很简单,但是实际做起来还是有各种不完美,那么我们也要去了解各种解决方案来丰富我们的知识,现在我们就来看看各种优劣 ...
- PAT——乙级真题1001代码
- extjs 学习小窍门
一.从form中获取field的三个方法: 1.Ext.getCmp('id'); 2.FormPanel.getForm().findField('id/name'); 3.Ext.get('id/ ...
- mac下使用gcc
1.下载安装macports:http://www.macports.org/install.php 安装完成之后,打开终端 2.在终端中输入 port install gcc_select 3.使用 ...