Типа того. Возможны ошибки - код не компилировал.

Код AS3:
myBMP; //объект BitmapData
var someShape:Shape;
//Draw shape
var n_x = someShape.x - myBMP.x - someShape.width/2; //координаты верхнего левого угла someShape
var n_y = someShape.y - myBMP.y - someShape.height/2; // относительно myBMP
var maskBMP:BitmapData = new BitmapData(someShape.width, someShape.height, false, 0xFF00FF00); // Цвет выбирается произвольно. Можно использовать и альфа-канал
maskBMP.draw(someShape); //объект someShape должен быть, к примеру, красного цвета 0xFFFF0000
var newBMP:BitmapData = new BitmapData(someShape.width, someShape.height, false, 0xFFFFFFFF); // Объект-приемник
//копируем пиксели из области над которой лежит someShape
var rect:Rectangle = new Rectangle(0, 0, someShape.width, someShape.height);
var pt:Point = new Point(n_x, n_y);
newBMP.copyPixels(myBMP, rect, pt);
newBMP.copyChanel(maskBMP, rect,[0,0],BitmapDataChannel.RED,BitmapDataChannel.ALPHA);
// промежуточные объекты можно удалить