Flash 8, exemple de flou

Soyez le premier à donner votre avis sur cette source.

Vue 44 835 fois - Téléchargée 4 290 fois

Description

Un exemple de ce que l'on peut faire avec les nouveautés de flash 8 ! Ici le filtre blur (flou).
En fait c'est juste 8 images décalés, et quand on passe la souris sur l'une d'elles, les autres deviennent flou proportionnelemnt à leur éloignement.
Ce code n'est peut-être pas la façon la + simple pour faire cette effet mais je vois pas comment faire autrement...
J'ai essayé de le commenter le mieux possible mais si c'est pas clair, demandez moi !
Je mets le code pour ceux qui n'ont pas flash 8 mais qui veulent le voir...

Source / Exemple :


// Il y a 8 clips, nommés clip1, clip2, clip3,...
// Nombre de couches :
nombre = 8;
// On dit que "blur" est un filtre de flou
blur = new flash.filters.BlurFilter(0, 0, 1);
// Une boucle pour tester chaque clip :
for (i=1; i<=nombre; i++) {
	// La variable varI de chaque clip est égale à i (pour pouvoir se reservir de
	// la variable i dans le onRollOver qui suit) :
	this["clip"+i].varI = i;
	// Quand on survole un des clips :
	this["clip"+i].onRollOver = function() {
		// Les valeur du flou blur, x et y, sont égaux à 0 :
		blur.blurX = blur.blurY=0;
		// On applique le filtre blur sur le bouton survolé, pour qu'il devienne net :
		this.filters = [blur];
		// Une boucle qui va servire à donner aux clips non suvolé une valeur de + en + flou :
		for (t=1; t<=nombre; t++) {
			// Les valeur du flou blur x et y sont égale à t fois 5, pour que +
			// le nom du clip à un chiffre éloigné de 0, plus il est flou :
			blur.blurX = blur.blurY=t*5;
			// On crée 2 variables pour que les clips supérieurs du clip survolés soit + flous :
			autre1 = this.varI+t;
			// Pareille pour les clips inférieurs :
			autre2 = this.varI-t;
			// On applique les filtres sur les clips supérieurs et inférieurs de celui survolé :
			_root["clip"+autre1].filters = [blur];
			_root["clip"+autre2].filters = [blur];
		}
	};
}
// Voila voila :-D

Conclusion :


C'est un petit exemple mais ca montre une des possibilités des nouveautés de flash 8 !
Voila voila, à vos commentaires !

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
374
Date d'inscription
mardi 2 décembre 2003
Statut
Membre
Dernière intervention
24 avril 2013

salut!! ca a l'air pas mal ton truc!! mais pourrais tu me dire dans quel dossier incorporer le code stp?

Merci d'avance
Messages postés
71
Date d'inscription
mercredi 4 juin 2003
Statut
Membre
Dernière intervention
12 juillet 2006

Je connais pas encore les prototypes, je vais étudier ça, merci !
Messages postés
1058
Date d'inscription
jeudi 24 juillet 2003
Statut
Modérateur
Dernière intervention
14 février 2009

var nbrClip:Number = 5;
var blurFilter:Object = new flash.filters.BlurFilter();
blurFilter.quality = 3;
bt = function () {
};
bt.prototype = new MovieClip();
bt.prototype.onLoad = function() {
//tu positionne le clip en fonction de son numéro
this._x = 200+this.id*-50;
this._y = 100+this.id*-25;
};
bt.prototype.onRollOver = function() {
this.filters = [0];
// tu applique le flou en fonction ---- pas terrible ici
for (t=1; t<nbrClip; t++) {
blurFilter.blurX = blurFilter.blurY=2*this.id;
_level0["clip"+t].filters = [blurFilter];
//flou nul pour le clip survolé
this.filters = [0];
}
};
//avec "clip" comme identifiant dans la biblio tu duplique le clip
Object.registerClass("clip", bt);
//attache movie pour placer les clip sur la scène
for (i=1; i<nbrClip; i++) {
attachMovie("clip", "clip"+i, i);
//crée une var id pour de reference
this["clip"+i].id = i;
}

un truc comme ca
Messages postés
1058
Date d'inscription
jeudi 24 juillet 2003
Statut
Modérateur
Dernière intervention
14 février 2009

tu crée un proto
Messages postés
71
Date d'inscription
mercredi 4 juin 2003
Statut
Membre
Dernière intervention
12 juillet 2006

Bah tant que ça part pas dans l'excès et que les filtres ne sont pas utilisés à tout va...
Sinon Mafassure , il y a une methode pour ne pas mettre le onRollOver dans une boucle ?
Vu que le ça concerne tous les clips, je connais pas d'autres solutions que la boucle...
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.