【原创】制作Flash图像渐变倒影

private function createRef(p_source:Bitmap):BitmapData//制作倒影bitmapData
		{
			var bd:BitmapData=new BitmapData(p_source.width, p_source.height, true, 0);
			var mtx:Matrix = new Matrix();
			mtx.d=-1;
			mtx.ty=bd.height;
			bd.draw(p_source, mtx);
			var width:int=bd.width;
			var height:int=bd.height;
			mtx=new Matrix();
			mtx.createGradientBox(width, height, 0.5 * Math.PI);
			var shape:Shape = new Shape();
			shape.graphics.beginGradientFill(GradientType.LINEAR, [0, 0], [0.9, 0.2], [0, 0xFF], mtx)
			shape.graphics.drawRect(0, 0, width, height);
			shape.graphics.endFill();
			var mask_bd:BitmapData=new BitmapData(width, height, true, 0);
			mask_bd.draw(shape);
			bd.copyPixels(bd, bd.rect, new Point(0, 0), mask_bd, new Point(0, 0), false);
			return bd;
		}

 在另一篇博客  Away3D图片墙 中用到了此方法

你可能感兴趣的:(Flash)