http://www.annjing.cn/article.asp?id=37
核心思路:
DEMO中的位图数据主要有3个:1、背景;2、地面(可被挖坑);3、挖坑用的包含透明圆球的位图(一个矩形位图,中间的圆圈为透明的)
_earth.bitmapData.copyPixels(_earth.bitmapData, rect, point, abmd);
其中_earth.bitmapData就是刚才提到的位图2,rect和point不解释,
重点是这个abmd,就是刚才提到的位图3,这里我的生成方法是:
private function getCircleBMD(pow:int):BitmapData
{
var bmd:BitmapData = new BitmapData(pow * 2, pow * 2, true, 0xFF000000);
var spr:Sprite = new Sprite();
spr.graphics.beginFill(0xFFFFFF, 1);
spr.graphics.drawCircle(pow, pow, pow);
spr.graphics.endFill();
bmd.draw(spr);
bmd.floodFill(bmd.width / 2, bmd.height / 2, 0x00000000);
return bmd;
}
完整的项目代码在这里:
http://download.csdn.net/source/3018108