Les mouvements d’une occurrence sur la scène
CHAPITRE 5
137
Mouvement circulaire
Fichier de référence : Chapitre5/cossin2.fla
Dans ce deuxième exemple, nous réussissons à obtenir un mouvement circulaire car nous
combinons en x et en y, le calcul d’un cosinus et d’un sinus, en partant de la même valeur.
Consultez le lien ci-dessous pour vous rendre compte de l’obtention d’un mouvement
circulaire qui résulte de la combinaison de deux positions dans un repère orthonormé (le
cosinus est représenté par le point qui se déplace sur l’axe horizontal, le sinus par celui
qui se déplace sur l’axe vertical). Il est en effet très difficile d’expliquer par écrit, sans
possibilité de schéma animé, la démonstration suivante :
http://www.yazo.net/index.php?option=com_content&task=view&id=32&Itemid=47
var valeurCroissante:Number = 0;
planete.addEventListener(Event.ENTER_FRAME,mouvementCirculaire);
function mouvementCirculaire(evt:Event) {
valeurCroissante+=0.1;
evt.currentTarget.x=250+(Math.cos(valeurCroissante)*100);
evt.currentTarget.y=130+(Math.sin(valeurCroissante)*100);
}
Mouvement plus elliptique
Dans l’exemple précédent, nous obtenons une trajectoire circulaire car l’occurrence se
déplace du même nombre de pixels dans les directions horizontale et verticale. Si elle
se déplaçait plus loin horizontalement ou verticalement, nous obtiendrions un mouvement circulaire aplati, c’est-à-dire une trajectoire elliptique. Changez donc l’une des
deux valeurs (100) par un nombre plus grand ou plus petit et vous obtiendrez une
animation différente.
Accélérer ou ralentir le mouvement
Si vous avez utilisé un gestionnaire ENTER_FRAME pour exécuter votre code en continu
(notamment l’incrémentation de la valeur de la variable valeurCroissante de notre exemple), la vitesse d’exécution de votre animation dépend du nombre d’images par seconde
de votre fichier .fla. Si vous utilisez la classe Timer(), vous pouvez préciser l’intervalle
temps entre deux répétitions.
Il existe une autre technique qui consiste à effectuer un calcul plus précis du cosinus et/ou du
sinus afin d’obtenir plus de valeurs pour positionner votre occurrence. Plus le pas de
Remarque
Si vous observez un saut de l’image au lancement de l’animation, réglez manuellement la position x de
votre de occurrence à 255 pixels (via la palette Propriétés).
CHAPITRE 5
137
Mouvement circulaire
Fichier de référence : Chapitre5/cossin2.fla
Dans ce deuxième exemple, nous réussissons à obtenir un mouvement circulaire car nous
combinons en x et en y, le calcul d’un cosinus et d’un sinus, en partant de la même valeur.
Consultez le lien ci-dessous pour vous rendre compte de l’obtention d’un mouvement
circulaire qui résulte de la combinaison de deux positions dans un repère orthonormé (le
cosinus est représenté par le point qui se déplace sur l’axe horizontal, le sinus par celui
qui se déplace sur l’axe vertical). Il est en effet très difficile d’expliquer par écrit, sans
possibilité de schéma animé, la démonstration suivante :
http://www.yazo.net/index.php?option=com_content&task=view&id=32&Itemid=47
var valeurCroissante:Number = 0;
planete.addEventListener(Event.ENTER_FRAME,mouvementCirculaire);
function mouvementCirculaire(evt:Event) {
valeurCroissante+=0.1;
evt.currentTarget.x=250+(Math.cos(valeurCroissante)*100);
evt.currentTarget.y=130+(Math.sin(valeurCroissante)*100);
}
Mouvement plus elliptique
Dans l’exemple précédent, nous obtenons une trajectoire circulaire car l’occurrence se
déplace du même nombre de pixels dans les directions horizontale et verticale. Si elle
se déplaçait plus loin horizontalement ou verticalement, nous obtiendrions un mouvement circulaire aplati, c’est-à-dire une trajectoire elliptique. Changez donc l’une des
deux valeurs (100) par un nombre plus grand ou plus petit et vous obtiendrez une
animation différente.
Accélérer ou ralentir le mouvement
Si vous avez utilisé un gestionnaire ENTER_FRAME pour exécuter votre code en continu
(notamment l’incrémentation de la valeur de la variable valeurCroissante de notre exemple), la vitesse d’exécution de votre animation dépend du nombre d’images par seconde
de votre fichier .fla. Si vous utilisez la classe Timer(), vous pouvez préciser l’intervalle
temps entre deux répétitions.
Il existe une autre technique qui consiste à effectuer un calcul plus précis du cosinus et/ou du
sinus afin d’obtenir plus de valeurs pour positionner votre occurrence. Plus le pas de
Remarque
Si vous observez un saut de l’image au lancement de l’animation, réglez manuellement la position x de
votre de occurrence à 255 pixels (via la palette Propriétés).
