Outils pour utilisateurs

Outils du site


cours2010:multimedia:symbole_comme_objet

Symbole comme Objet

Le but du TP est d'illustrer l'usage d'un Symbole comme un Objet c.-à-d. :

  • Ayant des propriétés
  • Mais aussi des comportements… Des méthodes !

Anim logo SRC

Reprendre l'animation du logo SRC.

Le but du TP est de remplacer l'animation des lettres (roulette) par un champ texte (dynamique).

Éléments de base

  • Champ texte (dynamique)
    • Supprimer l'animation du Symbole “roulette” pour n'avoir qu'une image avec :
      • Un calque “Actions”
      • Un calque contenant un champ texte dynamique ayant pour nom d'occurrence lettre.
        • Au besoin, demander à exporter les caractères de la police employée.
    • Changer le texte affiché depuis l'animation principale :
      • roulette1.lettre.text = 'C';
  • Timer
    • Dans le symbole “roulette”, ajouter un Timer qui va appeler la fonction suivante :
      • function afficheNvlLettre(e:TimerEvent):void {
        	lettre.text = String.fromCharCode(0x0041+Math.floor(Math.random()*26));
        }
    • Piloter le Timer depuis l'animation principale :
      • roulette1.timerLettre.stop();

Mise en place de comportements (méthodes)

Depuis l'animation principale, l'on fait toujours les mêmes actions :

  • Arrêter le Timer et afficher une lettre.
  • Relancer le Timer.

L'objectif est d'écrire une fonction pour chaque action. En les plaçant sur le Symbole “roulette”, elles seront disponibles pour chaque instance de “roulette”. Ce sont des comportements associés au Symbole “roulette” : des méthodes.

Sur l'animation principale, l'on doit pouvoir simplement écrire :

roulette1.affiche('C');

ou

roulette1.roule();

Flip Clock

Le but du TP est de mettre en place un afficheur par panneaux.

Télécharger le fichier de départ et suivre scrupuleusement les étapes suivantes :
(Enregistrer chaque étape dans un fichier numéroté.)

  • 01 : Modifier les textes affichés avec du code placé sur la racine.
    • secondeUnitee_mc.animation_mc.departBas_mc.chiffre_txt.text = "1";
  • 02 :
    • Ajouter à “Chiffre code” deux fonctions fixant le chiffre de départ (fixeDepart) et d'arrivée (fixeArrivee).
      • function fixeDepart(n:uint):void {
        	var txt:String = n.toString();
        	...
        }
    • Appelez ces fonctions depuis la racine.
      • secondeUnitee_mc.fixeDepart(1);
  • 03 :
    • Ajoutez à “Chiffre code” :
      • Deux variables :
        • // Mémorise le chiffre de départ
          var depart:uint = 0;
          // Mémorise le chiffre d'arrivée
          var arrivee:uint = 0;
      • Une fonction animVers :
        • // Reçois le nouveau chiffre à afficher est anime depuis le précédant.
          function animVers(n:uint):void {
          	// Le départ est l'arrivée précédente.
           
          	// L'arrivée est le chiffre reçu.
           
          	// Affiche le chiffre de départ
           
          	// Affiche le chiffre d'arrivée
           
          	// Relance l'animation depuis le début
           
          }
    • Appelez animVers depuis la racine.
  • 04 : Ajouter à animVers un test pour ne rien faire si l'on demande à animer vers le chiffre déjà affiché.
  • 05 :
    • Mettre en place à la racine un Timer qui toutes les secondes…
      • Lit les secondes
      • Lance l'animation avec animVers.
    • Vous pouvez vous aider des fonctions suivantes :
      • function unitee(n:uint):uint {
        	return n % 10;
        }
         
        function dizaine(n:uint):uint {
        	return Math.floor(n / 10);
        }
  • 06 : Complétez l'horloge avec les heures et minutes…
  • Plus loin :
    • Modifier le code pour afficher des lettres et afficher une chaîne de caractères (String) sur plusieurs afficheurs. Regarder l'aide de String pour trouver comment extraire chaque lettre.
    • Mettre en place un Timer qui fait défiler les lettres de l'alphabet sur un afficheur.
cours2010/multimedia/symbole_comme_objet.txt · Dernière modification: 2011/03/29 22:00 (modification externe)