Fonctionnement
Une première solution, très simple aurais été de faire une interpolation entre une image trouble et une image nette. L'avantage aurait été la simplicité, mais en contrepartie l'animation deviens deux fois plus lourde.
Nous allons nous servir ici de la classe BlurFilter pour appliquer un flou Ă  l'image.
Le code
Le code est à placer sur une image clé de la scène principale. Il faut ensuite convertir l'image en clip où l'on veut appliquer le flou. On lui donnera comme nom d'occurence "image_mc".

Import et déclarations import flash.filters.BlurFilter;
import mx.transitions.Tween;
import mx.transitions.easing.Strong;

var flouMax:Number = 8;
var flouMin:Number = 0;

var blur:BlurFilter = new BlurFilter(flouMax, flouMax, 3);
image_mc.filters = new Array(blur);
Nous déclarons ici flouMax qui sera la valeur maximale du flou et flouMin pour la netteté. Pour créer un flou, nous utilisons donc BlurFilter. Nous entrons 3 paramètres, les deux premiers sont blurX et blurY et le dernier paramètre la qualité.

Action lors du survol image_mc.onRollOver = function() {
   var flouOn:Tween = new Tween(blur, "blurX", Regular, blur.blurX, flouMin, 10, false);
   flouOn.onMotionChanged = function() {
     blur.blurY = blur.blurX;
     image_mc.filters = new Array(blur);
}
}
Tween permet de créer dynamiquement une interpolation de mouvement. blur est l'objet sur lequel s'applique l'interpolation, "blurX" est l'effet, Regular l'accélération (ici normale), blur.blurX la position de départ, flouMin la position d'arrivée, 10 le temps, false précise que l'on parle en frame (true pour les secondes).
On affecte la mĂŞme valeur Ă  BlurY qu'Ă  BlurX pour avoir un effet rectiligne, puis on applique le flou Ă  l'image.

Il en va donc de mĂŞme pour l'action lorsque l'on est plus sur l'image, mais cette fois-ci dans le sens inverse : image_mc.onRollOut = function() {
   var flouOff:Tween = new Tween(blur, "blurX", Regular, blur.blurX, flouMax, 10, false);
   flouOff.onMotionChanged = function() {
     blur.blurY = blur.blurX;
     image_mc.filters = new Array(blur);
   }
}
Source
Source : flou.zip (645Ko)