码迷,mamicode.com
首页 > 其他好文 > 详细

coco2d学习day01 精灵分析

时间:2014-06-08 15:23:33      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:c   class   code   a   ext   color   

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 精灵分析,布布扣,bubuko.com

coco2d学习day01 精灵分析

标签:c   class   code   a   ext   color   

原文地址:http://blog.csdn.net/sundaboke/article/details/28723843

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!