Farbverlauf-Glühen-Filter

Flash Player 9 und höher, Adobe AIR 1.0 und höher

Mit der GradientGlowFilter-Klasse können Sie einen erweiterten Glühen-Effekt auf Anzeigeobjekte oder BitmapData-Objekte anwenden. Mit diesem Effekt haben Sie eine bessere Kontrolle über die Farben des Glühens und erzeugen einen realistischeren Glühen-Effekt. Darüber hinaus können Sie mit dem Farbverlauf-Glühen-Filter ein Glühen mit Farbverlauf auf die inneren, äußeren oder oberen Kanten eines Objekts anwenden.

Im folgenden Beispiel wird ein Kreis auf der Bühne erstellt und ein Farbverlauf-Glühen-Filter auf das Objekt angewendet. Wenn Sie die Maus weiter nach rechts und unten ziehen, erhöht sich das Ausmaß der Weichzeichnung in horizontaler bzw. vertikaler Richtung. Darüber hinaus wird jedes Mal, wenn Sie auf die Bühne klicken, die Stärke der Weichzeichnung erhöht.

import flash.events.MouseEvent; 
import flash.filters.BitmapFilterQuality; 
import flash.filters.BitmapFilterType; 
import flash.filters.GradientGlowFilter; 
 
// Create a new Shape instance. 
var shape:Shape = new Shape(); 
 
// Draw the shape. 
shape.graphics.beginFill(0xFF0000, 100); 
shape.graphics.moveTo(0, 0); 
shape.graphics.lineTo(100, 0); 
shape.graphics.lineTo(100, 100); 
shape.graphics.lineTo(0, 100); 
shape.graphics.lineTo(0, 0); 
shape.graphics.endFill(); 
 
// Position the shape on the Stage. 
addChild(shape); 
shape.x = 100; 
shape.y = 100; 
 
// Define a gradient glow. 
var gradientGlow:GradientGlowFilter = new GradientGlowFilter(); 
gradientGlow.distance = 0; 
gradientGlow.angle = 45; 
gradientGlow.colors = [0x000000, 0xFF0000]; 
gradientGlow.alphas = [0, 1]; 
gradientGlow.ratios = [0, 255]; 
gradientGlow.blurX = 10; 
gradientGlow.blurY = 10; 
gradientGlow.strength = 2; 
gradientGlow.quality = BitmapFilterQuality.HIGH; 
gradientGlow.type = BitmapFilterType.OUTER; 
 
// Define functions to listen for two events. 
function onClick(event:MouseEvent):void 
{ 
    gradientGlow.strength++; 
    shape.filters = [gradientGlow]; 
} 
 
function onMouseMove(event:MouseEvent):void 
{ 
    gradientGlow.blurX = (stage.mouseX / stage.stageWidth) * 255; 
    gradientGlow.blurY = (stage.mouseY / stage.stageHeight) * 255; 
    shape.filters = [gradientGlow]; 
} 
stage.addEventListener(MouseEvent.CLICK, onClick); 
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);