前言
在Startling里的DisplayObject对象会存在一个mask的变量,可以把各种形状赋值进去,来得到一个新的图形。其形状不止局限于矩形,甚至多边形,圆形或者更复杂的组合。这一切可以使用Canvas来实现多边形圆形。
varimage:Image =newImage(texture);
varquad:Quad =newQuad(100,100);
quad.x =50;
quad.y =50;
image.mask = quad;
这里已经实现了一个简易的方块遮罩。
varcanvas:Canves = new Canves();
canvas.beginFill(0x0);//这里的arr储存多边形的顶点坐标
canvas.drawPolygon(new Polygon(arr));
canvas.x =50;
canvas.y =50;//同样,可以使用自定义的顶点坐标来遮罩出一个新的图案
image.mask =canvas;
利用Canves的自定义顶点的功能,来实现一个自定义图形的遮罩。
<depthAndStencil>true</depthAndStencil>
请在initWindow标签里添加这个配置,否则会导致mask不可用。
网友评论