Paket | flash.filters |
Klass | public final class GradientGlowFilter |
Arv | GradientGlowFilter BitmapFilter Object |
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Användningen av filter beror på för vilket objekt du tillämpar filtret:
- Om du vill använda filter för att visa objekt använder du egenskapen
filters
. Inställningar avfilters
-egenskaper i ett objekt ändrar inte objektet. Du kan ta bort filtret genom att rensa egenskapenfilters
. - Om du vill använda filter på BitmapData-objekt använder du metoden
BitmapData.applyFilter()
. OmapplyFilter()
anropas för ett BitmapData-objekt används BitmapData-källobjektet och filterobjektet för att generera en filtrerad bild som resultat.
Om du använder ett filter för att visa ett objekt, anges cacheAsBitmap
-egenskapen i visningsobjektet till true
. Om du rensar alla filter återställs ursprungsvärdet cacheAsBitmap
.
Det här filtret stöder skalning på scenen. Det stöder däremot inte allmän skalning, rotation och skevning. Om själva objektet skalas (om scaleX
och scaleY
har ett annat värde än 1.0) skalas inte filtret. Det skalas endast om användaren zoomar in på scenen.
Inget filter används om resultatbilden överskrider maxdimensionerna. I AIR 1.5 och Flash Player 10 är maxstorleken 8 191 pixlar i bredd eller höjd, och det totala antalet pixlar får inte överskrida 16 777 215 pixlar. (Om en bild är 8 191 pixlar bred kan den därför bara vara 2 048 pixlar hög.) I Flash Player 9 och tidigare och i AIR 1.1 och tidigare är begränsningen 2 880 pixlar i höjd och 2 880 pixlar i bredd. Om du till exempel zoomar in på ett stort filmklipp med ett filter, inaktiveras filtret om den resulterande bilden överskrider maxdimensionerna.
Relaterade API-element
flash.display.BitmapData.applyFilter()
flash.display.DisplayObject.cacheAsBitmap
flash.display.DisplayObject.filters
Klassen GlowFilter
Egenskap | Definieras med | ||
---|---|---|---|
alphas : Array
En array med alfagenomskinlighetsvärden för motsvarande färger i färgarrayen. | GradientGlowFilter | ||
angle : Number
Vinkeln i grader. | GradientGlowFilter | ||
blurX : Number
Mängden vågrät oskärpa. | GradientGlowFilter | ||
blurY : Number
Mängden lodrät oskärpa. | GradientGlowFilter | ||
colors : Array
En array med färger som definierar en övertoning. | GradientGlowFilter | ||
constructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans. | Object | ||
distance : Number
Glödens förskjutningsavstånd. | GradientGlowFilter | ||
knockout : Boolean
Anger om objektet har en blockeringseffekt. | GradientGlowFilter | ||
quality : int
Hur många gånger filtret ska tillämpas. | GradientGlowFilter | ||
ratios : Array
En array med färgfördelningsförhållanden för motsvarande färger i färgarrayen. | GradientGlowFilter | ||
strength : Number
Styrkan hos intrycket eller spridningen. | GradientGlowFilter | ||
type : String
Filtereffektens placering. | GradientGlowFilter |
Metod | Definieras med | ||
---|---|---|---|
GradientGlowFilter(distance:Number = 4.0, angle:Number = 45, colors:Array = null, alphas:Array = null, ratios:Array = null, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1, quality:int = 1, type:String = "inner", knockout:Boolean = false)
Initierar filtret med de angivna parametrarna. | GradientGlowFilter | ||
[åsidosätt]
Returnerar en kopia av det här filterobjektet. | GradientGlowFilter | ||
Anger om det finns en egenskap angiven för ett objekt. | Object | ||
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter. | Object | ||
Anger om den angivna egenskapen finns och är uppräkningsbar. | Object | ||
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder. | Object | ||
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner. | Object | ||
Returnerar det angivna objektets strängbeteckning. | Object | ||
Returnerar det angivna objektets primitiva värde. | Object |
alphas | egenskap |
alphas:Array
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
En array med alfagenomskinlighetsvärden för motsvarande färger i colors
-arrayen. Giltiga värden för varje element i arrayen är 0 till 1. 0,25 innebär till exempel att alfagenomskinlighetsvärdet är 25 %.
Egenskapen alphas
kan inte ändras genom att dess värden ändras direkt. Du måste i stället hämta en referens till alphas
, ändra i referensen och sedan ställa in alphas
efter referensen.
Egenskaperna colors
, alphas
och ratios
är relaterade. Det första elementet i colors
-arrayen motsvarar det första elementet i alphas
-arrayen och i ratios
-arrayen och så vidare.
Implementering
public function get alphas():Array
public function set alphas(value:Array):void
Utlöser
TypeError — Arrayen är null när den ställs in
|
Relaterade API-element
angle | egenskap |
angle:Number
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Vinkeln i grader. Giltiga värden är från 0 till 360. Standardvärdet är 45.
Värdet för angle representerar infallsvinkeln för en teoretisk ljuskälla som faller på objektet och avgör placeringen av effekten i förhållande till det. Om distance
är 0 förskjuts inte effekten från objektet. Därför har egenskapen angle
ingen effekt.
Implementering
public function get angle():Number
public function set angle(value:Number):void
blurX | egenskap |
blurX:Number
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Mängden vågrät oskärpa. Giltiga värden är från 0 till 255. Om oskärpan är 1 eller mindre kopieras originalbilden i befintligt skick. Standardvärdet är 4. Värden som är 2-potenser (till exempel 2, 4, 8, 16 och 32) är optimerade för snabbare rendering än andra värden.
Implementering
public function get blurX():Number
public function set blurX(value:Number):void
blurY | egenskap |
blurY:Number
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Mängden lodrät oskärpa. Giltiga värden är från 0 till 255. Om oskärpan är 1 eller mindre kopieras originalbilden i befintligt skick. Standardvärdet är 4. Värden som är 2-potenser (till exempel 2, 4, 8, 16 och 32) är optimerade för snabbare rendering än andra värden.
Implementering
public function get blurY():Number
public function set blurY(value:Number):void
colors | egenskap |
colors:Array
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
En array med färger som definierar en övertoning. Röd är till exempel 0xFF0000, blå är 0x0000FF och så vidare.
Egenskapen colors
kan inte ändras genom att dess värden ändras direkt. Du måste i stället hämta en referens till colors
, ändra i referensen och sedan ställa in colors
efter referensen.
Egenskaperna colors
, alphas
och ratios
är relaterade. Det första elementet i colors
-arrayen motsvarar det första elementet i alphas
-arrayen och i ratios
-arrayen och så vidare.
Implementering
public function get colors():Array
public function set colors(value:Array):void
Utlöser
TypeError — Arrayen är null när den ställs in
|
Relaterade API-element
distance | egenskap |
knockout | egenskap |
knockout:Boolean
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Anger om objektet har en blockeringseffekt. En blockeringseffekt gör objektets fyllning genomskinlig så att dokumentets bakgrundsfärg syns. Värdet true
anger en blockeringseffekt. Standardvärdet är false
(ingen blockeringseffekt).
Implementering
public function get knockout():Boolean
public function set knockout(value:Boolean):void
quality | egenskap |
quality:int
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Hur många gånger filtret ska tillämpas. Standardvärdet är BitmapFilterQuality.LOW
, vilket motsvarar en tillämpning av filtret. Värdet BitmapFilterQuality.MEDIUM
används två gånger på filtret. Värdet BitmapFilterQuality.HIGH
används tre gånger. Filter med lägre värden renderas snabbare.
För de flesta program är ett quality
-värde på låg, medel eller hög tillräckligt. Du kan använda ytterligare numeriska värden upp till 15 för att få olika effekter, men högre värden tar längre tid att rendera. I stället för att öka quality
-värdet kan du ofta få en liknande effekt och snabbare rendering genom att bara öka värdena för blurX
och blurY
.
Implementering
public function get quality():int
public function set quality(value:int):void
Relaterade API-element
ratios | egenskap |
ratios:Array
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
En array med färgfördelningsförhållanden för motsvarande färger i colors
-arrayen. Giltiga värden är från 0 till 255.
Egenskapen ratios
kan inte ändras genom att dess värden ändras direkt. Du måste i stället hämta en referens till ratios
, ändra i referensen och sedan ställa in ratios
efter referensen.
Egenskaperna colors
, alphas
och ratios
är relaterade. Det första elementet i colors
-arrayen motsvarar det första elementet i alphas
-arrayen och i ratios
-arrayen och så vidare.
Tänk dig övertoningsglödfiltret som en glöd som utgår från objektets mitt (om värdet distance
är 0) där övertoningarna är färgremsor som övergår i varandra. Den första färgen i arrayen colors
är glödens yttersta färg. Den sista färgen är glödens innersta färg.
Varje värde i arrayen ratios
anger placeringen för färgen i övertoningens radie, där 0 betecknar övertoningens yttersta punkt och 255 betecknar övertoningens innersta punkt. ratio-värdena kan vara från 0 till 255 med stigande värde – till exempel [0, 64, 128, 200, 255]. Värden från 0 till 128 visas på glödens yttre kanter. Värden från 129 till 255 visas i glödens innerområde. Beroende på färgernas ratio-värden och filtrets type
-värde kan filterfärgerna döljas av objektet som filtret tillämpas på.
I följande kod och bild tillämpas ett filter på ett svart runt filmklipp vars typ är "full"
. I instruktionssyfte har den första färgen i arrayen colors
(rosa) ett alpha
-värde på 1, så att den syns mot dokumentets vita bakgrund. (I praktiken vill du antagligen inte att den första färgen visas på det sättet.) Arrayens sista färg, gul, döljer den svarta cirkeln som filtret tillämpas på:
var colors:Array = [0xFFCCFF, 0x0000FF, 0x9900FF, 0xFF0000, 0xFFFF00]; var alphas:Array = [1, 1, 1, 1, 1]; var ratios:Array = [0, 32, 64, 128, 225]; var myGGF:GradientGlowFilter = new GradientGlowFilter(0, 0, colors, alphas, ratios, 50, 50, 1, 2, "full", false);
För att få en jämn effekt med dokumentbakgrunden när du ställer in type
-värdet på "outer"
eller "full"
, ställer du in den första färgen i arrayen på samma färg som dokumentbakgrunden eller anger att den första färgens alfavärde ska vara 0. Båda metoderna gör att filtret övergår mjukt i bakgrunden.
Om du gör två små ändringar i koden kan glödeffekten bli väldigt annorlunda, även med samma ratios
- och colors
-arrayer. Ange att den första färgen i arrayen ska ha alfavärdet 0 så att filtret övergår mjukt i dokumentets vita bakgrund och ställ in egenskapen type
på "outer"
eller "inner"
. Observera resultatet som visas på följande bilder.
Tänk på att färgspridningen i övertoningen baseras på värdena för egenskaperna blurX
, blurY
, strength
och quality
samt ratios
-värdena.
Implementering
public function get ratios():Array
public function set ratios(value:Array):void
Utlöser
TypeError — Arrayen är null när den ställs in
|
Relaterade API-element
strength | egenskap |
strength:Number
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Styrkan hos intrycket eller spridningen. Ju högre värde desto mer färg används och desto starkare blir kontrasten mellan glöden och bakgrunden. Giltiga värden är från 0 till 255. Värdet 0 innebär att filtret inte används. Standardvärdet är 1.
Implementering
public function get strength():Number
public function set strength(value:Number):void
type | egenskap |
type:String
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Filtereffektens placering. Möjliga värden är flash.filters.BitmapFilterType-konstanterna:
BitmapFilterType.OUTER
– glöd på objektets yttre kantBitmapFilterType.INNER
– glöd på objektets inre kant (standard).BitmapFilterType.FULL
– glöd på objektets ovansida
Implementering
public function get type():String
public function set type(value:String):void
Utlöser
TypeError — Strängen är null när den ställs in
|
GradientGlowFilter | () | Konstruktor |
public function GradientGlowFilter(distance:Number = 4.0, angle:Number = 45, colors:Array = null, alphas:Array = null, ratios:Array = null, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1, quality:int = 1, type:String = "inner", knockout:Boolean = false)
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Initierar filtret med de angivna parametrarna.
Parametrardistance:Number (default = 4.0 ) — Glödens förskjutningsavstånd.
| |
angle:Number (default = 45 ) — Vinkeln i grader. Giltiga värden är från 0 till 360.
| |
colors:Array (default = null ) — En array med färger som definierar en övertoning. Röd är till exempel 0xFF0000, blå är 0x0000FF och så vidare.
| |
alphas:Array (default = null ) — En array med alfagenomskinlighetsvärden för motsvarande färger i colors -arrayen. Giltiga värden för varje element i arrayen är 0 till 1. Värdet 0,25 innebär till exempel att alfagenomskinlighetsvärdet är 25 %.
| |
ratios:Array (default = null ) — En array med färgdistributionsförhållanden. Giltiga värden är från 0 till 255. Värdet definierar hur stor del av bredden (i procent) där färgen är 100 %.
| |
blurX:Number (default = 4.0 ) — Mängden vågrät oskärpa. Giltiga värden är från 0 till 255. Om oskärpan är 1 eller mindre kopieras originalbilden i befintligt skick. Värden som är 2-potenser (till exempel 2, 4, 8, 16 och 32) är optimerade för snabbare rendering än andra värden.
| |
blurY:Number (default = 4.0 ) — Mängden lodrät oskärpa. Giltiga värden är från 0 till 255. Om oskärpan är 1 eller mindre kopieras originalbilden i befintligt skick. Värden som är 2-potenser (till exempel 2, 4, 8, 16 och 32) är optimerade för snabbare rendering än andra värden.
| |
strength:Number (default = 1 ) — Styrkan hos intrycket eller spridningen. Ju högre värde desto mer färg används och desto starkare blir kontrasten mellan glöden och bakgrunden. Giltiga värden är från 0 till 255. Ju högre värdet är, desto starkare blir intrycket. Värdet 0 innebär att filtret inte används.
| |
quality:int (default = 1 ) — Hur många gånger filtret ska tillämpas. Använd BitmapFilterQuality-konstanterna:
Mer information finns i beskrivningen av egenskapen | |
type:String (default = "inner ") — Filtereffektens placering. Möjliga värden är flash.filters.BitmapFilterType-konstanterna:
| |
knockout:Boolean (default = false ) — Anger om objektet har en blockeringseffekt. En blockeringseffekt gör objektets fyllning genomskinlig så att dokumentets bakgrundsfärg syns. Värdet true anger en blockeringseffekt. Standardvärdet är false (ingen blockeringseffekt).
|
clone | () | metod |
override public function clone():BitmapFilter
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Returnerar en kopia av det här filterobjektet.
ReturnerarBitmapFilter — En ny instans av GradientGlowFilter med samma egenskaper som den ursprungliga instansen av GradientGlowFilter.
|
- Importera de nödvändiga klasserna.
- Deklarera globala variabler som används för att definiera kvadraten och filtret.
- Skapa konstruktorfunktionen som gör följande:
- Anropar
draw()
-metoden som använder metoder för Graphics-klassen genomgraphics
-egenskapen för Sprite för att rita en fyrkant. - Skapar ett nytt BitmapFilter-objekt med namnet
filter
och kopplar det till det returnerade värdet för ett anrop avgetBitmapFilter()
som skapar filtret. - Skapar en ny array med namnet
myFilters
och lägger tillfilter
i arrayen. - Tilldelar
myFilters
tillfilters
-egenskapen i GradientGlowFilterExample-objektet. Då tillämpas alla filter som finns imyFilters
vilket i det här fallet bara ärfilter
.
- Anropar
package { import flash.filters.BitmapFilter; import flash.filters.BitmapFilterQuality; import flash.filters.BitmapFilterType; import flash.filters.GradientGlowFilter; import flash.display.Sprite; public class GradientGlowFilterExample extends Sprite { private var bgColor:uint = 0xCCCCCC; private var size:uint = 80; private var offset:uint = 50; private var distance:Number = 0; private var angleInDegrees:Number = 45; private var colors:Array = [0xFFFFFF, 0xFF0000, 0xFFFF00, 0x00CCFF]; private var alphas:Array = [0, 1, 1, 1]; private var ratios:Array = [0, 63, 126, 255]; private var blurX:Number = 50; private var blurY:Number = 50; private var strength:Number = 2.5; private var quality:Number = BitmapFilterQuality.HIGH; private var type:String = BitmapFilterType.OUTER; private var knockout:Boolean = false; public function GradientGlowFilterExample() { draw(); var filter:BitmapFilter = getBitmapFilter(); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } private function getBitmapFilter():BitmapFilter { return new GradientGlowFilter(distance, angleInDegrees, colors, alphas, ratios, blurX, blurY, strength, quality, type, knockout); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(offset, offset, size, size); graphics.endFill(); } } }
Tue Jun 12 2018, 01:40 PM Z