AS3 get Bitmap from Movieclip with Mask

5.3k Views Asked by At

This works:

var a:BitmapData = new BitmapData(640,480);
var b:Bitmap = new Bitmap(a);
a.draw(movieClip);

This doesn't work:

movieClip.mask = movieClipMask;
var a:BitmapData = new BitmapData(640,480);
var b:Bitmap = new Bitmap(a);
a.draw(movieClip);

How can I draw just the visible part of a MovieClip (that uses a mask) into my Bitmap?

1

There are 1 best solutions below

2
On BEST ANSWER

Create a new Sprite and add both the MovieClip and its mask to it. Then draw the parent Sprite.

var container:Sprite = new Sprite();
container.addChild (movieClip);
container.addChild (movieClipMask);
movieClip.mask = movieClipMask;

var a:BitmapData = new BitmapData(640,480);
var b:Bitmap = new Bitmap(a);
a.draw(container);