ReflectionFlexMaterial.as
上传用户:chuer333
上传日期:2022-06-13
资源大小:906k
文件大小:1k
源码类别:

FlashMX/Flex源码

开发平台:

Flex

  1. package com.dougmccune.containers.materials
  2. {
  3. import flash.display.BlendMode;
  4. import flash.display.DisplayObject;
  5. import flash.display.GradientType;
  6. import flash.display.Sprite;
  7. import flash.geom.Matrix;
  8. public class ReflectionFlexMaterial extends FlexMaterial
  9. {
  10. public function ReflectionFlexMaterial(movieAsset:DisplayObject=null, transparent:Boolean=true)
  11. {
  12. super(movieAsset, transparent);
  13. }
  14. override public function drawBitmap():void {
  15. var mtx:Matrix = new Matrix();
  16. mtx.scale( movie.scaleX, -movie.scaleY );
  17. mtx.translate(0, movie.height);
  18. bitmap.draw( movie, mtx, movie.transform.colorTransform, BlendMode.LAYER );
  19. var sprite:Sprite = new Sprite();
  20. var alphas:Array = [0, .2];
  21. var ratios:Array = [150, 255];
  22. var matr:Matrix = new Matrix();
  23. matr.createGradientBox(bitmap.width, bitmap.height, Math.PI/2, 0, 0);
  24. sprite.graphics.beginGradientFill(GradientType.LINEAR, [0x000000, 0x000000], alphas, ratios, matr);  
  25. sprite.graphics.drawRect(0,0,bitmap.width,bitmap.height);
  26. bitmap.draw(sprite, mtx, null, BlendMode.ALPHA);
  27. }
  28. }
  29. }