<h2>Votre Formation vidéo</h2><br/>
Votre formation est décomposée<br/>
en chapitres très clairs de 20 à 30 min. <h2>Des exemples SWF </h2><br/>
Chaque leçon est accompagnée<br/>
du code source avec le fla et les classes. <h2>Votre Suivi personnalisé</h2><br/>
Vous pouvez  me poser toutes<br/>
vos questions sous les cours vidéos.

Sujets sur : trace

Cours ActionScript 3 ‘trace’

Comment arrondir un nombre en 2 lignes de code avec ActionScript / Flash ?

Commentaires fermés sur Comment arrondir un nombre en 2 lignes de code avec ActionScript / Flash ?

Ecrit le 1 juillet par Matthieu
Publié dans le(s) sujet(s) ActionScript 3 |Cours AS3

Pour continuer à répondre à vos nombreuses questions suite à la Formation AS3 Facile,

Voici une question qui revient très souvent de la part des Développeurs :

  • Comment arrondir des nombres en ActionScript / Flash ?
Il y a plusieurs solutions.
Je vous propose une fonction très simple et très rapide à utiliser dans vos applications flash.

Arrondir un Nombre

Nous allons tout simplement utiliser la fonction d’arrondi par défaut de la classe Math de Flash.

Et nous allons la combiner à l’utilisation des puissances de 10 pour obtenir le nombre de décimales souhaitées.

Tout se résumé à seulement 2 lignes de code ! (voir 1 seule)

Rounding   
/**
 * Arrondi un nombre avec x décimales après la virgule.
 * 
 * @param nValue : nombre à arrondir
 * @param nDecimal : nombre de décimales (par défaut pas d'arrondi, sans décimal)
 * @return : nombre arrondi
 */
private function mathRounding( nValue:Number, nDecimal:int=0) : Number
{
	// Math.pow pour la puissance de 10 - puissance de 10 en fonction du nombre de décimales souhaitées
	var nMult:Number = Math.pow(10, nDecimal); 
 
	return Math.round( nValue * nMult ) / nMult;
}

La 1ère ligne calcule la puissance de 10 nécessaire.

Sur la 2ème ligne, il y a plusieurs calculs à la suite :

  • Premièrement, le nombre est multiplié par la puissance de 10 pour décaler la virgule.
  • Deuxième le nombre est arrondi avec Math.round().
  • Dernièrement, la puissance de 10 divise le nombre pour mettre la virgule au bon endroit et afficher les décimales.

Démonstration Arrondir un Nombre

Appuyez sur le bouton « c’est parti » pour lancer l’arrondi de nombre aléatoire.

https://e6msyji6epr.exactdn.com/wp-content/uploads/2012/07/MathRounding.swf

Télécharger le code source Arrondir un Nombre

L’application de démonstration « Arrondir un Nombre » met en pratique les cours ActionScript ci-dessous :

Posez vos questions ActionScript / Flash ?

Posez-moi dès maintenant vos questions ActionScript / Flash, et je vous répondrai dans les prochains tutoriels.

Classe de Sortie Debug Ultra Simple en ActionScript 3

Commentaires fermés sur Classe de Sortie Debug Ultra Simple en ActionScript 3

Ecrit le 1 novembre par Matthieu
Publié dans le(s) sujet(s) ActionScript 3

Sur le site  de Grant Skinner, j’ai trouvé une classe de sortie debug ultra simple et pratique.

Pour afficher rapidement des valeurs, comme un trace, cette petite classe utilitaire est un bijou !

Utilisation de Out.as

Pour l’utiliser, c’est facile, il suffit de mettre la classe Out.as dans votre répertoire source (ou src).

Ensuite, il reste à affecter un champ texte de sortie à Out.textfield.

Out.as   
Out.textField = oTextDebug;

Vous pouvez également spécifier le nombre maximum de caractères à conserver.

Ainsi, les anciennes trace seront automatiquement effacées au fur et à mesure de l’ajout des nouveaux.

Out.as   
Out.maxLength = 1333;

Ensuite, de n’importe endroit de votre application, vous pouvez appeler Out.trace (valeur) pour effectuer un trace.

Cela affiche la valeur dans votre TextField en l’ajoutant à la fin de votre champ de texte.

Vous pouvez faire défiler le champ texte à la fin pour afficher le dernier trace.

Out.as   
Out.trace("Bonjour");
Out.trace("count:", count);// Possibilité de transmettre plusieurs paramètres

Adapter Out.as à vos projets

Enfin, vous pouvez personnaliser le trace en fonction de votre projet.

Il suffit de remplacer Out.handler par votre propre fonction.

Par exemple, pour effectuer un format sur votre texte de trace, modifier sa couleur, ajouter des informations supplémentaires…

Vous pouvez ajouter une combinaison de touches (ctrl+d) pour afficher / masquer le trace.

Le code ci-dessous permet d’afficher le trace, uniquement si le premier paramètre est 1.

Ainsi, vous pouvez utiliser une variable, pour activer ou non la sortie trace sur Out.as.

Out.as   
function log(...rest:Array):Boolean
{
  trace("logging : "+rest.join(","));
  // ... etc.
  // écrit dans le TextField seulement si le premier paramètre (ex. priorité debug) est > 1
  return rest[0] > 1; // renvoie false pour empêcher l'écriture dans Out.textField
}
Out.handler = log;

Exemple de personnalisation de Out.as

J’ai ajouté sur Out.as la gestion de l’appuie simultanée sur les touches Ctrl et D pour afficher ou masquer le TextField de Debug.

https://e6msyji6epr.exactdn.com/wp-content/uploads/2011/11/debug-simple.swf

Télécharger le code source de Out.as

Dans le fichier ci-dessous, le code source de l’exemple avec la classe Out.as modifiée.

Télécharger “Out.as Debug simple” ex-out-debug-simple.zip – Téléchargé 185 fois – 88 Ko

Sources : Grant Skinner

Démarrer avec ActionScript 3 : la classe Main

Commentaires fermés sur Démarrer avec ActionScript 3 : la classe Main

Ecrit le 20 mars par Matthieu
Publié dans le(s) sujet(s) ActionScript 3

Dans cette vidéo, je vous propose de découvrir la classe de base à utiliser dans vos projets flash : la classe Main.

Celle-ci contient plusieurs fonctionnalités prêtes pour être utiliser dans vos classes ActionScript.

Voici le résultat dans un swf :

https://e6msyji6epr.exactdn.com/wp-content/uploads/2011/03/main-base.swf

Téléchargez le code source complet de l’exemple :

Télécharger “Classe Main de base” ex-main-base.zip – Téléchargé 299 fois – 24 Ko

Téléchargez De MonsterDebugger pour le debug de vos applications flash : le fameux trace amélioré !

Et vous, quelle classe Main utilisez-vous pour démarrer vos swf ?

Postez votre code AS3 dans les commentaires, je suis curieux de voir votre code.

package
{
	import nl.demonsters.debugger.MonsterDebugger;
	import flash.text.TextFormat;
	import flash.text.TextField;
	import flash.events.Event;
	import flash.display.Sprite;
 
	public class Main extends Sprite
	{
		private var debugger:MonsterDebugger;
 
		public function Main()
		{
			// attend la fin de l'initialisation de la scène
			this.addEventListener(Event.ADDED_TO_STAGE, onReady, false, 0, true);
		}
 
		/**
		 * Démarrage de votre application.
		 *
		 */
		protected function onReady(event : Event) : void
		{
			this.removeEventListener(Event.ADDED_TO_STAGE, onReady);
 
			// Init De MonsterDebugger
			debugger = new MonsterDebugger(this);
 
			// message de debug
			MonsterDebugger.trace(this, "Start Application");
 
			// le code de notre application
			var oText:TextField = new TextField();
			oText.width = stage.stageWidth;
			oText.autoSize = 'center';
			oText.text = "Bienvenue sur ActionScript-Facile";
			oText.y = 150;
 
			var tFormat:TextFormat = new TextFormat();
			tFormat.font = "Arial";
			tFormat.size = 20;
			tFormat.color = Math.random() * 0X00FFFFFF;
			oText.setTextFormat(tFormat);
			addChild( oText );
 
			MonsterDebugger.trace(this, oText);// affichage dans le debug de notre objet oText
		}
	}
}