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总是 ...
随机推荐
- QT socket相关
#include<QtNetwork/QTcpSocket>#include<QtNetwork/QTcpServer> 1.服务器端 void About::init_tcp ...
- setTimeout调用带参数的函数的方法
function test(s){ alert(s);}window.setTimeout(function(){test('str');},1000);这样就可以了...为什么是这样呢.因为s ...
- python成长之路-----day1-----作业(登录程序和三级菜单)
作业: 作业1:用户登录 1)程序说明: a.用户输入密码验证成功然后打印欢迎信息 b.如果密码错误,用户登录失败,提示用户,密码错误 c.用户输入密码错误3次,则用户锁定 d.当用户多次输入不存在的 ...
- Javascript Promise入门
是什么? https://www.promisejs.org/ What is a promise? The core idea behind promises is that a promise r ...
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.0 版新增消息管理
在V3.0版本的Web(Mvc.WebForm)与WinForm中我们新增了“消息管理”模块.“消息管理”模块是对框架的所有消息进行管理.通过左侧的消息分类可以查看所选分类的所有消息列表.在主界面上我 ...
- HBase的Write Ahead Log (WAL) —— 整体架构、线程模型
解决的问题 HBase的Write Ahead Log (WAL)提供了一种高并发.持久化的日志保存与回放机制.每一个业务数据的写入操作(PUT / DELETE)执行前,都会记账在WAL中. 如果出 ...
- fzuoj Problem 2129 子序列个数
http://acm.fzu.edu.cn/problem.php?pid=2129 Problem 2129 子序列个数 Accept: 162 Submit: 491Time Limit: ...
- c++的引用
/*#include"iostream"using namespace std;void any_function(int & p);//声明函数any_function/ ...
- JVM内存结构---《深入理解Java虚拟机》学习总结
Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域.这些区域的用途各不相同,同时也依据着各自的执行规则,独立的创建和销毁数据. 虚拟机内存的划分,如图所示: 线程之间 ...
- Java Thread 多线程 介绍
1.线程概述 几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是一个程序,每个运行中的程序就是一个进程. 当一个程序运行时,内部可能包含了多个顺序执行流,每个顺序执行流就是一个线程. 2.线程 ...