Package | flash.filters |
Classe | public final class GradientGlowFilter |
Héritage | GradientGlowFilter BitmapFilter Object |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
L’utilisation de filtres dépend de l’objet auquel vous appliquez le filtre.
- Pour appliquer des filtres aux objets d’affichage, utilisez la propriété
filters
. Lorsque vous définissez la propriétéfilters
d’un objet, celui-ci n’est pas modifié. En outre, vous pouvez supprimer la propriétéfilters
pour enlever le filtre. - Pour appliquer des filtres aux objets BitmapData, utilisez la méthode
BitmapData.applyFilter()
. L’appel deapplyFilter()
pour un objet BitmapData génère une image filtrée à partir de l’objet BitmapData source et de l’objet filtre.
Si vous appliquez un filtre à un objet d’affichage, la propriété cacheAsBitmap
de cet objet est réglée sur true
. Si vous supprimez tous les filtres, la valeur d’origine de cacheAsBitmap
est restaurée.
Ce filtre prend en charge le redimensionnement de la scène. Toutefois, le redimensionnement général, la rotation et l’inclinaison ne sont pas pris en charge. Si l’objet est lui-même redimensionné (si les propriétés scaleX
et scaleY
ne sont pas réglées sur 1,0), l’effet de filtre n’est pas redimensionné. Le redimensionnement est effectué uniquement en cas de zoom avant sur la scène.
Aucun filtre n’est appliqué si l’image obtenue dépasse les dimensions maximales. Dans AIR 1.5 et Flash Player 10, la taille maximale est de 8 191 pixels en largeur ou en hauteur, et le nombre total de pixels ne peut pas excéder 16 777 215 pixels (ainsi, si la largeur d’une image est de 8 191 pixels, sa hauteur maximale doit être de 2 048 pixels). Dans Flash Player 9 et les versions antérieures, ainsi que dans AIR 1.1 et les versions antérieures, la limite est de 2 880 pixels de haut sur 2 880 pixels de large. Par exemple, lorsque vous effectuez un zoom avant sur un clip de grande taille auquel un filtre est appliqué, le filtre sera désactivé si l’image obtenue dépasse les dimensions maximales.
Eléments de l’API associés
flash.display.BitmapData.applyFilter()
flash.display.DisplayObject.cacheAsBitmap
flash.display.DisplayObject.filters
Classe GlowFilter
Propriété | Défini par | ||
---|---|---|---|
alphas : Array
Tableau de valeurs de transparence alpha pour les couleurs correspondantes du tableau colors. | GradientGlowFilter | ||
angle : Number
Angle, exprimé en degrés. | GradientGlowFilter | ||
blurX : Number
Quantité de flou horizontal. | GradientGlowFilter | ||
blurY : Number
Quantité de flou vertical. | GradientGlowFilter | ||
colors : Array
Tableau de couleurs définissant un dégradé. | GradientGlowFilter | ||
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
distance : Number
Distance de décalage du rayonnement. | GradientGlowFilter | ||
knockout : Boolean
Spécifie si l’objet a un effet de masquage. | GradientGlowFilter | ||
quality : int
Nombre d’applications du filtre. | GradientGlowFilter | ||
ratios : Array
Tableau de taux de répartition des couleurs, pour les couleurs correspondantes du tableau colors. | GradientGlowFilter | ||
strength : Number
Intensité de l’empreinte ou recouvrement. | GradientGlowFilter | ||
type : String
Positionnement de l’effet de filtre. | GradientGlowFilter |
Méthode | Défini par | ||
---|---|---|---|
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)
Initialise le filtre avec les paramètres spécifiés. | GradientGlowFilter | ||
[override]
Renvoie une copie de cet objet filtre. | GradientGlowFilter | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | ||
Renvoie la valeur primitive de l’objet spécifié. | Object |
alphas | propriété |
alphas:Array
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Tableau de valeurs de transparence alpha pour les couleurs correspondantes du tableau colors
. Les valeurs valides pour chaque élément du tableau sont comprises entre 0 et 1. Par exemple, 0,25 définit une valeur de transparence de 25 %.
La propriété alphas
ne peut pas être modifiée en manipulant directement ses valeurs. Vous devez obtenir une référence à alphas
, effectuer les modifications sur la référence, puis définir la propriété alphas
sur la référence.
Les propriétés colors
, alphas
et ratios
sont liées. Le premier élément du tableau colors
correspond au premier élément du tableau alphas
, du tableau ratios
, etc.
Implémentation
public function get alphas():Array
public function set alphas(value:Array):void
Valeur émise
TypeError — La valeur du tableau est null au moment de sa définition.
|
Eléments de l’API associés
angle | propriété |
angle:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Angle, exprimé en degrés. Les valeurs possibles sont comprises entre 0 et 360. La valeur par défaut est 45.
La valeur d’angle représente l’angle de la source lumineuse théorique éclairant l’objet et détermine l’emplacement de l’effet par rapport à ce dernier. Si la valeur de distance
est 0, il n’y a pas d’effet de décalage par rapport à l’objet. La propriété angle
n’a donc aucun effet.
Implémentation
public function get angle():Number
public function set angle(value:Number):void
blurX | propriété |
blurX:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Quantité de flou horizontal. Les valeurs possibles sont comprises entre 0 et 255. Un flou d’une valeur inférieure ou égale à 1 signifie que l’image d’origine n’est pas modifiée avant d’être copiée. La valeur par défaut est 4. Les valeurs correspondant à une puissance de 2 (telles que 2, 4, 8, 16 et 32) sont optimisées pour obtenir un rendu plus rapide qu’avec les autres valeurs.
Implémentation
public function get blurX():Number
public function set blurX(value:Number):void
blurY | propriété |
blurY:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Quantité de flou vertical. Les valeurs possibles sont comprises entre 0 et 255. Un flou d’une valeur inférieure ou égale à 1 signifie que l’image d’origine n’est pas modifiée avant d’être copiée. La valeur par défaut est 4. Les valeurs correspondant à une puissance de 2 (telles que 2, 4, 8, 16 et 32) sont optimisées pour obtenir un rendu plus rapide qu’avec les autres valeurs.
Implémentation
public function get blurY():Number
public function set blurY(value:Number):void
colors | propriété |
colors:Array
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Tableau de couleurs définissant un dégradé. Par exemple, rouge correspond à 0xFF0000, bleu à 0x0000FF, etc.
La propriété colors
ne peut pas être modifiée en manipulant directement ses valeurs. Vous devez obtenir une référence à colors
, effectuer les modifications sur la référence, puis définir la propriété colors
sur la référence.
Les propriétés colors
, alphas
et ratios
sont liées. Le premier élément du tableau colors
correspond au premier élément du tableau alphas
, du tableau ratios
, etc.
Implémentation
public function get colors():Array
public function set colors(value:Array):void
Valeur émise
TypeError — La valeur du tableau est null au moment de sa définition.
|
Eléments de l’API associés
distance | propriété |
knockout | propriété |
knockout:Boolean
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Spécifie si l’objet a un effet de masquage. Un effet de masquage rend le remplissage de l’objet transparent et révèle la couleur d’arrière-plan du document. La valeur true
spécifie un effet de masquage ; la valeur par défaut est false
(pas d’effet de masquage).
Implémentation
public function get knockout():Boolean
public function set knockout(value:Boolean):void
quality | propriété |
quality:int
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Nombre d’applications du filtre. La valeur par défaut est BitmapFilterQuality.LOW
, ce qui revient à appliquer le filtre une seule fois. La valeur BitmapFilterQuality.MEDIUM
applique le filtre deux fois. La valeur BitmapFilterQuality.HIGH
l’applique trois fois. Les rendus des filtres de valeurs faibles sont obtenus plus rapidement.
Pour la plupart des applications, une valeur de quality
faible, moyenne ou élevée est suffisante. Il est possible d’utiliser des valeurs numériques allant jusqu’à 15 pour obtenir différents effets, mais le rendu des valeurs les plus élevées est moins rapide. Sans augmenter la valeur de quality
, vous pouvez généralement obtenir un effet similaire, avec un rendu plus rapide, en augmentant simplement les valeurs des propriétés blurX
et blurY
.
Implémentation
public function get quality():int
public function set quality(value:int):void
Eléments de l’API associés
ratios | propriété |
ratios:Array
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Tableau de taux de répartition des couleurs, pour les couleurs correspondantes du tableau colors
. Les valeurs possibles sont comprises entre 0 et 255.
La propriété ratios
ne peut pas être modifiée en manipulant directement ses valeurs. Vous devez obtenir une référence à ratios
, effectuer les modifications sur la référence, puis définir la propriété ratios
sur la référence.
Les propriétés colors
, alphas
et ratios
sont liées. Le premier élément du tableau colors
correspond au premier élément du tableau alphas
, du tableau ratios
, etc.
Considérez le filtre de rayonnement dégradé comme un rayonnement émanant du centre de l’objet (si la valeur distance
est définie sur 0), avec des bandes de couleurs se mêlant les unes aux autres pour constituer le dégradé. La première couleur du tableau colors
est la couleur la plus proche de l’extérieur du rayonnement. La dernière couleur est la plus au centre du rayonnement.
Chaque valeur du tableau ratios
définit l’emplacement de la couleur sur le rayon du dégradé, 0 représentant le point le plus éloigné et 255, le point le plus proche du centre du dégradé. Les valeurs de ratio s’échelonnent progressivement de 0 à 255 pixels : par exemple [0, 64, 128, 200, 255]. Les valeurs comprises entre 0 et 128 apparaissent sur les bords extérieurs du rayonnement. Les valeurs comprises entre 129 et 255 apparaissent à l’intérieur du rayonnement. Selon les valeurs de ratio des couleurs et la valeur type
du filtre, les couleurs du filtre peuvent être obscurcies par l’objet auquel le filtre est appliqué.
Dans le code et l’image ci-dessous, un filtre est appliqué à un cercle noir animé, le type étant défini sur la valeur "full"
. Pour les besoins de la démonstration, la première couleur du tableau colors
, rose, a une valeur alpha
de 1 pour qu’elle se détache bien sur le fond blanc du document (dans la pratique, vous ne choisirez probablement pas la première couleur ainsi). La dernière couleur du tableau, jaune, cache le cercle noir auquel le filtre est appliqué :
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);
Pour obtenir un effet de transparence homogène sur le fond de votre document lorsque vous définissez la valeur type
sur "outer"
ou "full"
, définissez la première couleur du tableau comme identique à celle de l’arrière-plan du document, ou définissez la valeur alpha de la première couleur sur 0. Ces deux techniques entraînent le mélange du filtre avec l’arrière-plan.
Deux petites modifications au code peuvent se traduire par un effet du rayonnement complètement différent et ce, même si les tableaux ratios
et colors
restent les mêmes. Définissez la valeur alpha de la première colonne du tableau sur 0 pour que le filtre se mélange à l’arrière-plan blanc du document ; puis définissez la propriété type
sur "outer"
ou "inner"
. Observez le résultat sur les illustrations suivantes.
N’oubliez pas que la répartition des couleurs dans le dégradé varie en fonction des valeurs des propriétés blurX
, blurY
, strength
et quality
, ainsi que des valeurs de ratios
.
Implémentation
public function get ratios():Array
public function set ratios(value:Array):void
Valeur émise
TypeError — La valeur du tableau est null au moment de sa définition.
|
Eléments de l’API associés
strength | propriété |
strength:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Intensité de l’empreinte ou recouvrement. Plus la valeur est élevée, plus le recouvrement est intense et plus le contraste entre le rayonnement et l’arrière-plan est important. Les valeurs possibles sont comprises entre 0 et 255. La valeur 0 signifie que le filtre n’est pas appliqué. La valeur par défaut est 1.
Implémentation
public function get strength():Number
public function set strength(value:Number):void
type | propriété |
type:String
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Positionnement de l’effet de filtre. Les valeurs possibles sont les constantes flash.filters.BitmapFilterType :
BitmapFilterType.OUTER
, rayonnement sur le bord extérieur de l’objet ;BitmapFilterType.INNER
, rayonnement sur le bord intérieur de l’objet, il s’agit de la valeur par défaut.BitmapFilterType.FULL
, rayonnement au-dessus de l’objet.
Implémentation
public function get type():String
public function set type(value:String):void
Valeur émise
TypeError — La chaîne prend la valeur null lors de sa définition.
|
GradientGlowFilter | () | Constructeur |
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)
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Initialise le filtre avec les paramètres spécifiés.
Paramètresdistance:Number (default = 4.0 ) — Distance de décalage du rayonnement.
| |
angle:Number (default = 45 ) — Angle, exprimé en degrés. Les valeurs possibles sont comprises entre 0 et 360.
| |
colors:Array (default = null ) — Tableau de couleurs définissant un dégradé. Par exemple, rouge correspond à 0xFF0000, bleu à 0x0000FF, etc.
| |
alphas:Array (default = null ) — Tableau de valeurs de transparence alpha pour les couleurs correspondantes du tableau colors . Les valeurs valides pour chaque élément du tableau sont comprises entre 0 et 1. La valeur 0,25, par exemple, définit une valeur de transparence alpha de 25 %.
| |
ratios:Array (default = null ) — Tableau des taux de répartition des couleurs. Les valeurs possibles sont comprises entre 0 et 255. Cette valeur définit le pourcentage de la largeur où la couleur est échantillonnée sur 100 %.
| |
blurX:Number (default = 4.0 ) — Quantité de flou horizontal. Les valeurs possibles sont comprises entre 0 et 255. Un flou d’une valeur inférieure ou égale à 1 signifie que l’image d’origine n’est pas modifiée avant d’être copiée. Les valeurs correspondant à une puissance de 2 (telles que 2, 4, 8, 16 et 32) sont optimisées pour obtenir un rendu plus rapide qu’avec les autres valeurs.
| |
blurY:Number (default = 4.0 ) — Quantité de flou vertical. Les valeurs possibles sont comprises entre 0 et 255. Un flou d’une valeur inférieure ou égale à 1 signifie que l’image d’origine n’est pas modifiée avant d’être copiée. Les valeurs correspondant à une puissance de 2 (telles que 2, 4, 8, 16 et 32) sont optimisées pour obtenir un rendu plus rapide qu’avec les autres valeurs.
| |
strength:Number (default = 1 ) — Intensité de l’empreinte ou recouvrement. Plus la valeur est élevée, plus le recouvrement est intense et plus le contraste entre le rayonnement et l’arrière-plan est important. Les valeurs possibles sont comprises entre 0 et 255. Plus la valeur est élevée, plus l’empreinte est marquée. La valeur 0 signifie que le filtre n’est pas appliqué.
| |
quality:int (default = 1 ) — Nombre d’applications du filtre. Utilisez les constantes BitmapFilterQuality :
Pour plus d’informations, voir la description de la propriété | |
type:String (default = "inner ") — Positionnement de l’effet de filtre. Les valeurs possibles sont les constantes flash.filters.BitmapFilterType :
| |
knockout:Boolean (default = false ) — Spécifie si l’objet a un effet de masquage. Un effet de masquage rend le remplissage de l’objet transparent et révèle la couleur d’arrière-plan du document. La valeur true spécifie un effet de masquage ; la valeur par défaut est false (pas d’effet de masquage).
|
clone | () | méthode |
override public function clone():BitmapFilter
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9 |
Renvoie une copie de cet objet filtre.
Valeur renvoyéeBitmapFilter — Nouvelle occurrence de GradientGlowFilter dont toutes les propriétés sont identiques à celles de l’occurrence de GradientGlowFilter d’origine.
|
- Importation des classes requises.
- Déclaration des variables globales utilisées pour définir le carré et le filtre.
- Création de la fonction constructeur qui effectue les actions suivantes :
- Appel de la méthode
draw()
qui utilise des méthodes de la classe Graphics, accessibles par le biais de la propriétégraphics
de Sprite, pour dessiner un carré. - Création d’un objet BitmapFilter nommé
filter
auquel est attribuée la valeur renvoyée d’un appel àgetBitmapFilter()
qui crée le filtre. - Création d’un nouveau tableau nommé
myFilters
auquel est ajoutéfilter
. - Attribution de
myFilters
à la propriétéfilters
de l’objet GradientGlowFilterExample. Ceci a pour effet d’appliquer tous les filtres trouvés dansmyFilters
, en l’occurrencefilter
uniquement.
- Appel de la méthode
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, 09:30 AM Z