Les mouvements d’une occurrence sur la scène
CHAPITRE 5
139
Fichier de référence : Chapitre5/cossin3.fla
var valeurCroissante:Number = 0;
spot.addEventListener(Event.ENTER_FRAME,mouvementLineaire);
function mouvementLineaire(evt:Event) {
valeurCroissante+=0.05;
evt.currentTarget.alpha = Math.abs(Math.cos(valeurCroissante));
}
Ajoutons que vous pouvez également utiliser les propriétés scaleX et scaleY pour obtenir
le même effet en faisant varier l’échelle d’une occurrence et non plus sa transparence.
Mouvement d’une planète
Après avoir analysé ensemble tous les scripts liés aux calculs de cosinus et sinus dans les
exemples précédents, voici un script que vous devriez comprendre sans difficulté.
Fichier de référence : Chapitre5/cossin3.fla
var valeurCroissante:Number = 0;
planete.addEventListener(Event.ENTER_FRAME,mouvementCirculaire);
function mouvementCirculaire(evt:Event) {
valeurCroissante+=0.07;
evt.currentTarget.x=250+(Math.cos(valeurCroissante)*200);
evt.currentTarget.y=130+(Math.sin(valeurCroissante)*50);
evt.currentTarget.scaleX=0.5+((evt.currentTarget.y-80)/130);
evt.currentTarget.scaleY=0.5+((evt.currentTarget.y-80)/130);
evt.currentTarget.alpha=0.3+((evt.currentTarget.y-80)/130);
}
Il s’agit d’un mouvement classique qui n’est pas uniquement utilisé pour la représentation
des mouvements des planètes du système solaire, mais également pour afficher plusieurs
images sur la scène d’une animation.
Pour obtenir l’effet escompté, nous avons simplement ajouté deux lignes d’instructions
qui permettent de régler l’échelle de l’occurrence qui tourne en fonction de sa position
verticale ; nous avons également revu à la baisse le rayon vertical afin d’obtenir un
mouvement elliptique.
Remarque
Consultez également, au début de ce chapitre, le développement dédié à l’événement ENTER_FRAME qui
fait référence à deux autres exemples à travers les points Obtenir un mouvement sinueux et Saccader un
mouvement.
Précédent

- 167/426

Suivant