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,这里我的生成方法是:
/**
- 得到一个球体的对象
- @param pow 随机圆的半径
- @return
- */
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
本文转自jiahuafu博客园博客,原文链接http://www.cnblogs.com/jiahuafu/archive/2011/02/25/1964407.html如需转载请自行联系原作者
jiahuafu