- 注册时间
- 2016-12-29
- 最后登录
- 2017-1-1
- 阅读权限
- 20
- 积分
- 13
- 精华
- 0
- 帖子
- 3
|
var layer1,layer2;
function main()
{
var bitmapdata = new LBitmapData("#000000",0,0,50,50);
layer1 = new LSprite();
addChild(layer1);
layer1.graphics.beginBitmapFill(bitmapdata); //填充应该是黑色!
layer1.graphics.drawRect(2,"#ff0000",[20,20,60,25]); //描边应该是红色!
layer2 = new LSprite();
layer2.y = 80;
addChild(layer2);
layer2.graphics.add(function(ctx){
ctx.strokeStyle="#00ff00";
ctx.lineWidth=4;
ctx.moveTo(20,0);
ctx.lineTo(120,0);
ctx.stroke(); //这儿描边路径会导致layer1的边框变色!
ctx.fillStyle = "#0000ff";
ctx.moveTo(0,50);
ctx.bezierCurveTo(100,0,80,150,0,160);
ctx.lineTo(0,50);
ctx.stroke();
ctx.fill(); //这儿填充会导致layer1的的填充变色!
});
}
LInit(50,"mylegend",500,350,main);
因为要贝塞尔曲线,引擎没有提供,所以要用add进行绘图。然后发现使用add进行绘图,会同时改变以前的绘图(不会改变后来的绘图)。有什么好的解决方案吗?
|
|