[Egret][文档]遮罩

——遮罩的作用是指定一个显示对象的可见区域,即这个显示对象只在这个区域可见。

一、矩形遮罩

将一个矩形对象赋值给显示对象的 mask 属性

shp.mask = new egret.Rectangle(20,20,30,50);

【注】:这个矩形的坐标(20,20)和(30,50)是相对于被遮罩对象shp来定位的。

二、显示对象遮罩

——显示对象的可见区域由另一个显示对象确定,可实现不规则遮罩。即可见区域是一个显示对象的范围。

//画一个红色的正方形
 var square:egret.Shape = new egret.Shape();
 square.graphics.beginFill(0xff0000);
 square.graphics.drawRect(0,0,100,100);
 square.graphics.endFill();
 this.addChild(square);
//画一个蓝色的圆形
var circle:egret.Shape = new egret.Shape();
circle.graphics.beginFill(0x0000ff);
circle.graphics.drawCircle(25,25,25);
circle.graphics.endFill();
this.addChild(circle);
square.mask = circle;

【注】:用作遮罩的显示对象可设置动画动态调整大小

遮罩显示对象不一定需要添加到显示列表中。但是,如果希望在缩放舞台时也缩放遮罩对象,或者如果希望支持用户与遮罩对象的交互(如调整大小),则必须将遮罩对象添加到显示列表中。

通过将 mask 属性设置为 null 可以删除遮罩:

mySprite.mask = null;

【注】:不能使用一个遮罩对象来遮罩另一个遮罩对象。

【注】:显示对象作为遮罩,无需像矩形遮罩那样重复赋值 mask,但是 mask 必须是显示列表里的元素。

猜你喜欢

转载自www.cnblogs.com/shenjie0507/p/10133197.html
今日推荐