Sondage du mois

Sondage du mois
 

  La connaissance ne vaut que si elle est partagée par tous




 
  Astuce Adobe Flash : Raccourci Distribuer aux couches : Ctrl Maj D




Les tutoriaux: Index » Flash » Flash » La class Tween

Introduction

  • Tutoriel posté par Sky
  • 3750 lectures
  • Mis en ligne le 09-03-2010
  • Dernière mise à jour le 15-11-2010
  • Ce tutoriel a été estimé comme simple.


Automatic Translations:
Translate Into English Translate Into German Translate Into Italian Translate Into Spanish Translate Into Portuguese

Nous allons voir dans ce tuto comment réaliser rapidement et simplement des effets sur nos Clips à l'aide de la class Tween




Méthodologie

Un peu d'histoire avant de commencer

Et oui rendons à César ce qui appartient à César ...
La class Tween à été conçu par un génie :) Pourquoi un génie ? Parce qu'il a su simplifier la vie de centaines de miliers de développeurs Flash

Cette class est apparue avec Flash Mx 2004 et a été codé par M. Robert Penner. Bien rapidement elle a été rachetée par Macromedia, nouvellement Adobe.
Cette class s'accompne des transitions easing-équations de Penner (Effet elastique, bounce etc.)

Voici le site de M. Penner : www.robertpenner.com/easing/
Vous y trouverez d'autre Easing et un aperçu de son travail.


Entrons dans le vif du sujet

La class tween accompagnée de ses easing-équations permet de créer des interpolations de mouvement ou de forme en une petite ligne de code, les transitions seront alors parfaitement restituées.
Ouvrez donc un nouveau document flash AS2 de la taille que vous souhaitez.

La première étape consistera à importer les class dans notre animation.
Pour ce faire sélection l'image vide numéro 1 et importez-y les classs comme ceci :



CODE FLASH


import mx.transitions.Tween;
import mx.transitions.easing.*;
stop();


Une fois les class importées nous allons créer un movieclip que nous allons animer avec "Tween".
Créer un nouveau calque et écriver à l'aide de l'outil texte statique : CLASS TWEEN par exemple.
Placer votre texte fraichement créer en dehors de votre animation comme sur l'image ci-dessous.
Dans mon exemple le point X est à -280px.



Sélectionner maintenant votre texte et transformer le en movieClip (F8)
Donnez maintenant un nom d'occurrence à votre Clip : Ceci est très important pour la suite.

Dans notre exemple nous l'appelerons : texte_anime



Voila tout est prêt pour tweener ensemble :)
Pour déclencher la tween nous allons utiliser un bouton, mais sachez cependant qu'elle peut être déclenché par plein de méthode, un écouteur, un timer, sur une image clé défini etc.
Dans notre exemple nous utiliserons un simple bouton.

Importer un bouton sur un nouveau calque (dans notre exemple je vais utiliser un bouton de la bibliothéque commune)
Et donner lui un nom d'occurrence (ici je l'ai appelé mon_bouton)






Revenons sur notre premier calque ou nous avions importé les classs tweens et easing et entrer en dessous ce bout de code



CODE FLASH


mon_bouton.onRelease = function (){
maTween = new Tween(texte_anime, "_x", Strong.easeOut, -280, 10, 40, false);
};



Nous venons juste de créer une action sur un bouton (mon_bouton.onRelease = blablabla ...)
La tween est appelé comme ceci :



CODE FLASH


maTween = new Tween(texte_anime, "_x", Strong.easeOut, -280, 10, 40, false);


En gros on définie le : new Tween(MovieClip impacté pour la Tween, "la tween agit sur l'axe X du clip", le style de transition ease, la position de départ, la position d'arrivée, le temps d'execution en ms, Valeur booléene pour savoir si on utilise des secondes (true) ou des frames (false));

Il ne vous reste plus qu'a tester votre bouton, faites ALT+ENTRER et cliquez sur votre bouton.


Les easing-équations

Dans notre petit bout de code ci-dessus nous avons utilisé l'easing-équation "Strong" en sorti de twenn "easeOut".
Voyons ci dessous les transitions proposées, voyons également si nous voulons un effet en début de Tween, à la fin de la Tween ou au début et à la fin :)

Back : effet de rebondissement. ( un seul rebondissement )

Bounce : effet de rebondissements ( multiples rebondissements )

Elastic : effet d'élasticité.

None : aucun effet.

Regular : Mouvement régulier mais adoucit par un léger ralentissement.

Strong : Ralentissement ou accélération du mouvement .

easeIn : L'effet est effectué vers le début de l'interpolation

easeOut : L'effet est effectué vers la fin de l'interpolation

easeInOut : L'effet est effectué deux fois, au début et à la fin de l'interpolation

Nous pouvons lancer des Tween sur l'axe des X, l'axe des Y, sur l'alpha, la teinte, la longueur, la largeur, multiplier les tweens entres elle pour avoir des effets tout à fait interressant
Vous l'aurez compris les possibilités sont énormes.



Controler ses Tweens

Les controles de Tweens servent à lancer une action spécifique à un moment donné. Par exemple vous voulez qu'a la fin de votre Tween la tête de lecture aille se positionner à l'image 20.
Pour ce faire nous allons utiliser des "écouteurs".

J'utilise pour ma part deux méthodes, celle avec OnEnterFrame et celle avec la création d'un objet écouteur.


Avec OnEnterframe

Toujours à la suite de votre code entrer

CODE FLASH


onEnterFrame = function () {
maTween.onMotionFinished = function() {
gotoAndStop(20);
}
};

Vous pouvez tester votre animation





Avec un Objet ecouteur

CODE FLASH


// création de l'objet écouteur :
var listenerObject:Object = new Object ();
// application d'un évenement sur l'objet :
listenerObject.onMotionFinished = function (Void):Void {
gotoAndStop(20);
}
// application de l'objet écouteur à la tween :
maTween.addListener(listenerObject);

Vous l'aurez compris il existe quelques gestionnaires d'évènement dont voici la liste


Liste des évenements

onMotionChanged

appelé lors de chaque changement d'une propriété de l'objet interpolé animé.

onMotionFinished

appelé lorsque l'objet Tween termine son animation.

onMotionResumed

invoqué lors de l'appel à la méthode Tween.resume(), provoquant ainsi la reprise de l'animation interpolée.

onMotionStarted

invoqué lors de l'appel à la méthode Tween.start(), provoquant ainsi le début de l'animation interpolée.

onMotionStopped

invoqué lors de l'appel à la méthode Tween.stop(), provoquant ainsi l'arrêt de l'animation interpolée.

 

Voici maintenant la liste des propriétés de la class Tween

Tween.yoyo();

Indique à l'animation interpolée d'effectuer la lecture à l'envers en partant de la dernière direction des incréments de propriété interpolés.

Tween.fforward():

Transmet l'animation interpolée directement à la fin de l'animation.

Tween.nextFrame();

Transmet l'animation interpolée à l'image suivante.

Tween.prevFrame();

Dirige l'animation interpolée à l'image précédant l'image actuelle.

Tween.resume();

Reprend une animation interpolée de son point d'arrêt dans l'animation.

Tween.rewind();

Rembobine une animation interpolée à son début.

Tween.start();

Démarre l'animation interpolée du début.

Tween.stop();

Arrête l'animation interpolée sur sa position actuelle.

Tween.toString();

Renvoie le nom de classe, « [Tween] ».


Quelques exemples d'effet easing - Elastic


Quelques exemples d'effet easing - Bounce

Notes

  Evaluez le tutorial (10 Votes)

8
1
1

Merci. Les liste des propriétés Tween ainsi que les gestionnaires d'évènements ont été pris sur le site developpez.com. Si cela pose un quelconque problème je les retirerais. En même temps on réinvente pas la roue :)

Merci

Pour les questions ou d'éventuelles remarques, dirigez vous vers le forum.

Réagir sur ce tutoriel - [Flash] La class Tween

DERNIÈRES PUBLICATIONS DE OPEN-MOUTHED

En direct de open-mouthed.com