1. 普通创建
var sprite = new cc.Sprite(“从loader加载的资源名称”);
2. 设置中点
sprite. setAnchorPoint(0~1, 0~1); // x、y的坐标
或者:
sprite.setAnchorPoint(cc.p(x, y)); // 同上
3. x/y坐标(图片中点的坐标)
sprite.setPosition(x, y);
或者
sprite.setPosition(cc.p(x, y));
4. 缩放
sprite. setScale(0.5); // 变为原本的0.5
或
sprite.setScale(0.5, 1); // x轴缩小到0.5,y轴保持不变
5. 图片翻转
sprite.flippedX = true; // X轴翻转
sprite.flippedY = true; // Y轴翻转
6. 设置透明
sprite.setOpacity (175); // 透明度 0 ~255,0是全透明
7. 颜色过滤效果
sprite.setColor(cc.color(0,255,255, 255)); // 蓝色过滤效果
8. 获取图片的box信息
var box = sprite.getBoundingBox(); // 包含x/y/width/height
9. 读取图片的某一片段
sprite.setTextureRect(cc.rect(x, y, width, height));//cc.rect的起点在左下角
// 从图片的(x,y)点开始,截取width、height部分显示
或者:
varsprite = new cc.Sprite(“res.png”, cc.rect(x,y, w, h)); // 解析同上
10. 更换图片资源
Sprite.setTexture(“更换的图片名称”); // 注意,如果设置过textureRect,可能因为图片坐标、大小变化,而看不见新的图片
或:
// 很麻烦的说~
var texture = newcc.Texture2D();
texture.initWithElement(img);//img 是cc.loader.loadImg的 img
texture.handleLoadedTexture();
sprite.setTexture(texture);
或:
// 在setTexure的源码里,有这么一种写法
// 就是不知道addImage的图片,是不是一定要先经过cc.loader的了~
var texture = cc.textureCache.addImage(“图片名称”);
sprite.setTexture(texture);
// 后边可不要~
var size = texture.getContentSize();
sprite.setTextureRect(cc.rect(0,0,size.width, size.height));
11. 重设zIndex
parent. reorderChild(sprite, zIndex); // 找到父亲,重新设置zIndex