coco2d学习day01 精灵分析

2022-12-14,,,

day01笔记
using namespace cocos2d; == USING_NS_CC; 一般用后面的 #ifndef __MYLAYER_H__
#define __MYLAYER_H__
---------------一般加入头文件加入宏
: public CCLayer 一般加入一个类继承CCLayer CCLayer::init();
CCLabelTTF *plabel = CCLabelTTF::create("sunda","Arial",36);//定义一个lable
addChild(plabel,1);//像scene里面加入一个lable
CCSize size =CCDirector::sharedDirector()->getWinSize();//获取当前坐标
plabel->setPosition(ccp(size.width / 2,size.height / 2));//设置lable的在舞台的位置
//加入一个图片image CCMenuItemImage::create("CloseNormal.png","CloseSelected.png",this,menu_selector(mylist::menuCloseCallback));
//第一个參数是显示的图片;
//第二个參数是点中的图片;
//第三个參数是点击的时候触发第四个參数;
CCMenuItemImage *inage = CCMenuItemImage::create("CloseNormal.png","CloseSelected.png",this,menu_selector(mylist::menuCloseCallback));
CCMenu* pMenu = CCMenu::create(inage, NULL);
pMenu->setPosition(460,20);//图片的坐标
addChild(pMenu, 1);//显示 //加入一个背景
CCSprite* pSprite = CCSprite::create("HelloWorld.png");//加入一个图片
pSprite->setPosition(ccp(size.width/2 ,size.height/2));//设置图片的位置
addChild(pSprite,0);//显示的呈
return true; setTouchEnabled(true);
支持触摸 假设不写不赞成触摸
setTouchMode(kCCTouchesAllAtOnce);
多点触摸:比方双手按在手机屏幕什么
setTouchMode(kCCTouchesOneByOne);
单点触摸:比方单手按在手机屏幕什么 bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);//当你手指刚刚按下是时候
void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);//当你手指移动按下是时候
void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);//当你手指离开按下是时候
void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);//当你电话来的时候 精灵创建
CCSprite* sprite = CCSprite::create("1/furnace/jt.png");
用图片直接创建
CCSprite* sprite = CCSprite::create("1/furnace/jt.png",CCRectMake(0,0,20,20));
//还是用同一张图片可是就用当中的一部分CCRectMake(x的起点,y的起点,x的终点,y的终点)
addChild(sprite);
CCSize size = CCDirector::sharedDirector()->getWinSize();//获取舞台的大小
sprite->setPosition(ccp(size.width/2,size.height/2));//把精灵发到的位置 //纹理属性
CCTexture2D* texture = CCTextureCache::sharedTextureCache()->addImage("1/furnace/jt.png");
//创建一个纹理 ,放到纹理缓存里面,并返回缓存对象
CCSprite* sprite = CCSprite::createWithTexture(texture);
//相当于把图片发到内存里面,能够使用多次
CCSprite* sprite = CCSprite::createWithTexture(texture,CCRectMake(0,0,20,20));
//还是用同一张图片可是就用当中的一部分CCRectMake(x的起点,y的起点,x的终点,y的终点) CCSpriteFrame* frame = CCSpriteFrame::createWithTexture(texture,CCRectMake(0,0,100,100));
//针就是纹理的一部分 CCSprite* sprite = CCSprite::create("Images/blocks.png");
//创建精灵 图片的地址必须Images/blocks.png
addChild(sprite);
sprite->setPosition(ccp(100,100));//基点在右下脚,到图片的中心店 //描点属性
sprite->setAnchorPoint(ccp(0,0));
//1、精灵的描点默认是(0.5,0.5) 不是绝对坐标值,而是百分百
//0,0 是右下脚
//1,1 是左下脚 //缩放属性
sprite->setScale(1.5f);
//就是把图片 缩放 sprite->setScaleX(0.5f);
//X轴 缩放
sprite->setScaleY(0.5f);
//Y轴 缩放 //旋转属性
sprite->setRotation(90.f);
整数是顺时钟旋转
负数是逆时针旋转
sprite->setRotationX(90.f);
Y轴 旋转90.度是没有了
sprite->setRotationY(90.f);
Y轴 旋转90.度是没有了 //扭曲属性
sprite->setSkewX(60.0f);
X轴 扭曲60度 可是扭曲到90度就没有
sprite->setSkewY(60.0f);
Y轴 扭曲60度 可是扭曲到90度就没有 旋转和扭曲的差别
旋转到180度 和扭曲到180度
旋转会变化,可是扭曲不会 //翻转
sprite->setFlipX(true);
是x轴 翻转
sprite->setFlipY(true);
是Y轴 翻转 //透明
sprite->setOpacity(1);
区间在0到255之间
0是全透明,255是不透明 //颜色
sprite->setColor(ccc3(255,0,0));
//ccc3(255,0,0),里面的參数是RGB 红、黄、绿 //可见属性
sprite->setVisible(false);
//false 为不可见属性
//ture 可见属性
//针属性
sprite->setDisplayFrame(...); //user data 属性 拓展cocos系统用
char * buf= "helloword";
sprite->setUserData(buf);
char *p=(char *)sprite->getUserData();
CCLOG("user data is %s",p); // 设置关联的对象
sprite->setUserObject(sprite);

coco2d学习day01 精灵分析的相关教程结束。

《coco2d学习day01 精灵分析.doc》

下载本文的Word格式文档,以方便收藏与打印。