1.2.6 Alpha测试用例的书写
把ShapeColorTransformTest复制为ShapeColorTransformTest,然后对代码进行如下调整:
首先把getTestSprite修改为:
1 //创建用于测试的显示对象 2 private function getTestSprite():Sprite{ 3 var _f:Array = [new BlurFilter(80, 80)]; 4 var _testSprite:Sprite = new Sprite(); 5 /*添加两个圆,颜色分别为白和黑*/ 6 _testSprite.addChild(new Circle(50, 0xFFFFFF, 100, 100)).filters = _f; 7 _testSprite.addChild(new Circle(50, 0xFFFFFF, 100, 250)).filters = _f; 8 return _testSprite; 9 }
而applyTransform函数则调整如下:
1 private function applyTransform():void{ 2 _myColorTransform = _testSprite_dst.transform.colorTransform; 3 _myColorTransform.alphaMultiplier = 0; 4 _myColorTransform.alphaOffset = 127; 5 _testSprite_dst.transform.colorTransform = _myColorTransform; 6 }
运行效果如图 1.13所示。作者用了BlurFilter模糊滤镜生成了带两个透明渐变圆的Sprite,本来用透明渐变填充会更合理,但考虑到渐变代码比较复杂,这里还没介绍到,就先拿模糊滤镜凑合着用吧。
图 1.13 alpha测试用例
下面我们尝试一下alpha变换。
ActionScript游戏中的图像编程(连载十一)
时间: 2024-10-09 20:16:15