Bonjour à tous,
Dans beaucoup d'application, le besoin d'arrondir un nombre se fait ressentir.
Voilà donc une petite fonction toute faite, qui permet d'arrondir n'importe quel nombre, en donnant la précision que l'on veut.
Dans l'idée, nous avons 1 méthode principale dans Flash :
- La fonction
Math.Round(nombre)
Cette fonction arrondi à
l'entier supérieur ou inférieur, le nombre passé en paramètre.
Nous voulons pouvoir arrondir à 2 ou 3 chiffres après la virgule.
Alors décalons notre virgule vers la droite, réalisons l'arrondi avec
Math.Round et redécalons la virgule vers la gauche par la suite.
[AS]
/************************************************
* Fonction arrondir(nombre, precision)
* Permet de calculer l'arrondi du nombre "nombre" avec
* un nombre de chiffre après la virgule égal à "précision"
* IN : nombre = nombre à arrondir
* : precision = nombre de chiffre après la virgule
* OUT : résultat arrondi
************************************************/
_global.arrondir = function(nombre, precision){
var nombreArrondi;
nombreArrondi = Math.round( nombre * Math.pow(10, precision)) / Math.pow(10, precision);
return nombreArrondi;
}
[/AS]
Tester et comparer les résultats avec
[AS]
trace("ARRONDI FONCTION " + arrondir(7.5625,3));
trace("ARRONDI CLASSIQUE " + Math.Round(7.5625));
[/AS]
Note
Je déclaire ma fonction avec
_global juste devant mon nom de fonction.
En effet, j'ai pour habitude de déclarer mes fonctions, les plus utilisées, dans des fichiers externes, des "
.as".
Ensuite avec un
include, je peux appeler ces fonctions.
Le terme
_global me permet d'appeler cette fonction de n'importe où dans mon animation. Que je sois sur le _root ou très loin dans l'arborescence de clip. Assez pratique disons.
Mais je reviendrais dessus dans des tutos plus "théorique" sur la prog AS.
@+ et bon courage.
N.B: J'ai fais cette fonction du temps de Flash MX. Je n'ai pas encore regardé si il y avait plus simple (et aussi précis) dans la nouvelle mouture 2004 Pro.
---------------------------------------------------------
Source disponible ::
Source FLA