Packageflash.filters
Classepublic final class BlurFilter
HéritageBlurFilter Inheritance BitmapFilter Inheritance Object

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

La classe BlurFilter permet d'appliquer un effet visuel de flou aux objets d'affichage. Un effet de flou adoucit les détails d'une image. Vous pouvez produire différents flous, d'un aspect doux et sans contours précis, à un flou gaussien dont l'aspect voilé produit le même effet que celui d'une image regardée à travers un verre semi-opaque. Quand la propriété quality de ce filtre est réglée sur faible, vous obtenez un aspect doux sans contours précis. Quand la propriété quality est élevée, l'effet se rapproche d'un filtre de flou gaussien. Vous pouvez appliquer le filtre à tout objet d'affichage (autrement dit, aux objets héritant des propriétés de la classe DisplayObject), tels que MovieClip, SimpleButton, TextField et Video, ainsi qu'aux objets BitmapData.

Pour créer un nouveau filtre, utilisez le constructeur new BlurFilter(). L'utilisation de filtres dépend de l'objet auquel vous appliquez le 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. Cependant, il ne prend pas en charge le redimensionnement général, la rotation ni l'inclinaison. Si l'objet lui-même est redimensionné (les propriétés scaleX et scaleY ne sont pas réglées sur 100 %), 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 192 pixels en largeur ou en hauteur, et le nombre total de pixels ne peut pas excéder 16 777 216 pixels. (Ainsi, si la largeur d'une image est de 8 192 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, si 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.

Consulter les exemples

Voir aussi

flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
flash.display.BitmapData.applyFilter()


Propriétés publiques
 PropriétéDéfini par
  blurX : Number
Quantité de flou horizontal.
BlurFilter
  blurY : Number
Quantité de flou vertical.
BlurFilter
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
 Inheritedprototype : Object
[statique] Référence à l'objet prototype d'un objet de classe ou fonction.
Object
  quality : int
Nombre d'applications du flou.
BlurFilter
Méthodes publiques
 MéthodeDéfini par
  
BlurFilter(blurX:Number = 4.0, blurY:Number = 4.0, quality:int = 1)
Initialise le filtre avec les paramètres spécifiés.
BlurFilter
  
Renvoie une copie de cet objet filtre.
BlurFilter
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
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
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
Détails de la propriété
blurXpropriété
blurX:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Quantité de flou horizontal. Les valeurs valides sont comprises entre 0 et 255 (virgule flottante). 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
blurYpropriété 
blurY:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Quantité de flou vertical. Les valeurs valides sont comprises entre 0 et 255 (virgule flottante). 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
qualitypropriété 
quality:int  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Nombre d'applications du flou. 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 et se rapproche d'un flou gaussien. 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 augmenter le nombre d'applications du flou, 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.

Vous pouvez utiliser les constantes BitmapFilterQuality suivantes pour spécifier les valeurs de la propriété quality :



Implémentation
    public function get quality():int
    public function set quality(value:int):void
Détails du constructeur
BlurFilter()Constructeur
public function BlurFilter(blurX:Number = 4.0, blurY:Number = 4.0, quality:int = 1)

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. Les valeurs par défaut créent une image floue sans contours précis.

Paramètres
blurX:Number (default = 4.0) — Quantité de flou à appliquer horizontalement. Les valeurs valides sont comprises entre 0 et 255,0 (valeur en virgule flottante).
 
blurY:Number (default = 4.0) — Quantité de flou à appliquer verticalement. Les valeurs valides sont comprises entre 0 et 255,0 (valeur en virgule flottante).
 
quality:int (default = 1) — Nombre d'applications du filtre. Vous pouvez définir la qualité à l'aide des constantes BitmapFilterQuality :
  • flash.filters.BitmapFilterQuality.LOW
  • flash.filters.BitmapFilterQuality.MEDIUM
  • flash.filters.BitmapFilterQuality.HIGH

La qualité supérieure se rapproche d'un flou gaussien. Dans la plupart des cas, ces trois valeurs sont suffisantes. 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.

Détails de la méthode
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ée
BitmapFilter — Nouvelle occurrence de BlurFilter dont toutes les propriétés sont identiques à celles de l'occurrence BlurFilter d'origine.
Exemples Utilisation des exemples
BlurFilterExample.as

L'exemple suivant crée un carré jaune foncé auquel un filtre de flou gaussien est appliqué. La séquence des principales tâches de cet exemple s'organise comme suit :
  1. Importation des classes requises.
  2. Déclaration des trois propriétés utilisées dans la fonction draw() qui dessine l'objet auquel le filtre de flou est appliqué.
  3. Création de la fonction constructeur BlurFilterExample() qui effectue les actions suivantes :
    • Appel de la fonction draw() qui est déclarée ultérieurement.
    • Déclaration d'une variable filter comme objet BitmapFilter et attribution de celui-ci à la valeur renvoyée d'un appel à getBitmapFilter().
    • Création d'un nouvel objet Array myFilters, ajout de filter au tableau, puis attribution de myFilters à la propriété filters de l'objet BlurFilterExample. Ceci a pour effet d'appliquer tous les filtres trouvés dans myFilters, en l'occurrence filter uniquement.
  4. Création de la fonction getBitmapFilter() afin de créer et de définir des propriétés pour le filtre.
  5. Création de la fonction draw(). Cette fonction utilise des méthodes de la classe Graphics, accessibles par le biais de la propriété graphics de la classe Sprite, pour dessiner le carré.
package {
    import flash.display.Sprite;
    import flash.filters.BitmapFilter;
    import flash.filters.BitmapFilterQuality;
    import flash.filters.BlurFilter;

    public class BlurFilterExample extends Sprite {
        private var bgColor:uint = 0xFFCC00;
        private var size:uint    = 80;
        private var offset:uint  = 50;

        public function BlurFilterExample() {
            draw();
            var filter:BitmapFilter = getBitmapFilter();
            var myFilters:Array = new Array();
            myFilters.push(filter);
            filters = myFilters;
        }

        private function getBitmapFilter():BitmapFilter {
            var blurX:Number = 30;
            var blurY:Number = 30;
            return new BlurFilter(blurX, blurY, BitmapFilterQuality.HIGH);
        }

        private function draw():void {
            graphics.beginFill(bgColor);
            graphics.drawRect(offset, offset, size, size);
            graphics.endFill();
        }
    }
}