在ActionScript 3.0中显示蒙版

时间:2010-02-21 19:23:54

标签: actionscript-3 visibility mask

我有包含加载的swf的Loader对象。我不知道这个swf的形状怎么样 - 它不一定是矩形的。

我想在它上面添加一些光反射。我需要用Loader来掩盖这个反射,但同时我需要这个Loader可见。

我不想加载swf两次,因为它可能包含一些动态的,脚本生成的内容,这会在每个Loader中产生不同的结果。

这是一个很大的问题,不是吗?有什么想法吗?

图片:http://www.freeimagehosting.net/uploads/12e6b9cd63.jpg

1 个答案:

答案 0 :(得分:0)

你可以将你加载的swf的实例添加到舞台上,并且对于反射使用相同的movieclip / sprite并将其绘制到新的BitmapData。进行所需的转换,然后添加到舞台。

或者想象下面的情况,而不是将加载的swf添加到库中,你可以从加载应用程序执行此操作,例如,将实例名称MyDisplayObject提供给加载的swf中的movieclip,导出到actionscript。加载swf后,您可以使用以下代码访问库,因此您可以在案例2中添加此对象的次数。

这是代码(来自adobe live docs)

function initHandler(e:Event) {
var applicationDomain:ApplicationDomain = e.target.applicationDomain; // e.target is the loaderInfo object
var testClip:Class=applicationDomain.getDefinition("testClip") as Class;
var clip = new testClip();
addChild(clip);
var reflection = new testClip();
addChild(reflection);
reflection.y= 100;
}

希望这能让你走上正轨。