Catégories

Texte libre

Le webring Flash francophone

W3C

  • Flux RSS des articles

Recommander

Actionscript

Vendredi 9 décembre 2005

Pour arrondir un chiffre, Flash nous propose la fonction  MathRound. Mais cette méthode ne permet pas de conserver des chiffres après la virgule.

Pour contourner ce problème, nous allons faire un peu de math.
Pour arrondir avec deux chiffres après la virgule, il suffit de multiplier le chiffre à arrondir par 100.
On applique alors le Math round qui va déclencher l'arrondi puis diviser le tout par 100 pour repasser les deux chiffres après la virgule.
La formule en question : arrondi=(Math.round(nombre*100))/100

Mais un bon exemple permet souvent de mieux comprendre ce genre de chose :

nombre : 100,434567
nombre*100= 10043,4567
arrondi = 10043
arrondi/100=100,43


Attention, cette méthode ne permet pas de faire un arrondi précis puisque l'arrondi se fait toujours à la borne basse.
Nous aborderons plus tard une fonction plus compliquée pour éviter ce problème.

Par Nicoeum
Ecrire un commentaire - Voir les 1 commentaires - Recommander
Vendredi 9 décembre 2005

Pour tracer une ligne tout en actions script :
(code à placer sur une frame dans cet exemple)

Créons d'abord un movie clip vide : 

 _root.createEmptyMovieClip("ligne",1);
// ligne : nom du movie clip
// 1 : profondeur


Définissons le style de la ligne

ligne.lineStyle (1, 0x00FF00, 100);
// ligne : nom du movie clip
// 1 : taille de la ligne
//
0x00FF00 : Couleur de la ligne
// 100 : alpha (transparence)

 

 

Traçons la ligne :  

ligne.moveTo( x1,y1);
// moveTo: Définit le point de départ du tracé
// x1: abscisse de départ
// y1 : ordonnée de départ
ligne.lineTo( x2, y2);
// lineTo: Définit le point d'arrivé et la commande pour tracer le trait
// x2: abscisse d'arrivée
// y2: ordonnée d'arrivée

Voilà, vous savez tracer une ligne. Cela vous offre plein de possibilités pour des tracés multiples ou la création de graphique.
Je vous laisse le code complet au cas où :

_root.createEmptyMovieClip("ligne",1);
ligne.lineStyle (1, 0x00FF00, 100);
ligne.moveTo( x1,y1);
ligne.lineTo( x2, y2);

Par Nicoeum
Ecrire un commentaire - Voir les 2 commentaires - Recommander
Lundi 19 décembre 2005

On m'a récemment fourni une vidéo où je devais ajouter de l'interactivité lors de certain passage dans mon interface flash. Amateur de Flash's forum, j'avais entendu parler des cuepoint (s) et je me suis dit que c'était le truc idéal pour pouvoir identifier précisément des points d'entrée et de sortie dans mon flv.
Pas très pratiques à utiliser, très mal documentés, le cuepoint m'a pourri la journée.
OK, je suis pas un champion en ActionScript mais là, faut pas pousser.
Au passage, si vous souhaitez en savoir plus, la seul ressource française est sur le blog de JP

Quand à moi, j'ai trouvé une solution qui me semble bien pratique pour éviter (dans mon cas ) cette galère.

Je crée une fonction qui va mettre dans une variable le temps actuel de la vidéo
J'associe à cette fonction des actions relatives au temps
On fait tourner cette fonction en boucle avec un setInterval

timer=function(){
temps=mavideo.playheadTime; // ici, je met dans la variable "temps" la position actuelle de ma tête de lecture
if (temps >= 10 && temps <= 85){
trace("action entre ces deux moment");
}
}

setInterval (timer,1);

Attention, cette méthode est imprécise à quelques centièmes de secondes près et le temps est en secondes ...
C'est peut-être du bricolage par certains côté mais il ya vraiment un côté pratique.
N"hesitez pas à me proposer une simplification du code ou une amélioration

Par Nicoeum
Ecrire un commentaire - Voir les 3 commentaires - Recommander
Mardi 20 décembre 2005

Note : pour maitriser cette partie, je vous recommande de lire l'article sur le composant alerte dans la partie ... composants

// définition de la fonction d'alerte
bip=function(messages){
import mx.controls.Alert
Alert.show(messages, "Alerte", Alert.OK);}


On place alors un écouteur qui va surveiller la pression de la touche qui nous interesse (ici la virgule qui a le code 188 ) :


monEcouteur = new Object ();
monEcouteur.onKeyDown = function ()
{
 if (Key.getCode () == 188)
 {
  // Declenche l'alerte en embarquant le message
  _root.bip ("Utilisez le point comme séparateur à la place de la virgule");
 }
};
Key.addListener (monEcouteur);

Par Nicoeum
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Jeudi 22 décembre 2005

Vous est-il arrivé d'être obligé de répeter certaines actions de nombreuses fois pour un grand nombre d'instances sur votre animation. Par exemple, redimensionner de nombreux clip à taille identique.
L'opération peut-être fastidieuse si vous devez à chaque fois executer plusieurs actions.Pour éviter cela, il y a les commandes.

Faites une fois l'opération complète.
Ouvrez le panneau historique : Fenêtre>Autre Panneau>Historique
Séléctionnez les actions que vous venez de réaliser et cliquez sur le bouton en forme de disquette.
Un panneau s'ouvre : saisissez le nom de votre commande et cliquez sur OK
Votre commande est désormais disponnible dans l'onglet "Commandes".

Des applications bien plus complexes peuvent-êtres réalisés à partir de l'outil commandes. Ce sera l'occasion de prochains articles

Par Nicoeum
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Dimanche 15 janvier 2006
C'est dimanche, alors on fait vite ;-)
Toujours sur l'excellent Media Box, plein de classes AS2 pour fairte plein de choses !!! En tout cas, moi, ça vient de me donner plein d'idées !!!! Ca se passe içi
Par Nicoeum
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Lundi 16 janvier 2006

Une librairie d'action script téléchargeable ici
Le tout est en AS2 mais le site propose aussi une version AS1

Voici une liste des possibilités qu'elle propose :

Animation :
AnimationCore  Parallel  Sequence   Animation  Timeline  Move  MoveOnQuadCurve
MoveOnCubicCurve  MoveOnCurve  MoveOnPath  Rotation  Scale  Alpha  Skew
ColorTransform  ColorBrightness  ColorNegative  ColorDodge  MaskMoveFX  MaskScaleFX
Glow  GradientGlow  Bevel  GradientBevel  DropShadow  Blur  BlurDuplicate  Shake  Trail
Blink  Volume

Dessin :
SuperShape  Shape  Drawer  ShapeComposite  Line  DashLine  QuadCurve  CubicCurve
Curve  Arc  Ellipse  Rectangle  RoundRectangle  Poly  Burst  Spiral  Star  Gear

 

 

 

 

Par Nicoeum
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Mercredi 18 janvier 2006

Flash permet de créer des sauvegardes sur l'ordinateur de votre visiteur.
C'est comme un cookie, ça ressemble à un cookie mais ce n'est pas un cookie.

Ce qu'il faut savoir :
A la différence d'un cookie, un SharedObject n'est pas sauvegardé dans les temporaires internet mais dans un dossier spécifique.
Ce fichier a une extension " .sol " et se trouve dans un des sous répertoires du Flash Player (le chemin précis dépend de votre OS et de votre configuration).
Sa taille de base est au maximum de 100Ko ce qui vous laisse largement de quoi faire en terme de variables. Si vous souhaitez un espace plus important, une boite de dialogue s'ouvrira pour en demander l'autorisation lors de la consultation du swf  (image de droite).
Vous ne pouvez pas faire communiquer plusieurs swf entre eux au moyen d'un Objet Partagé (le petite nom français des S.O.) ... pour cela, il faut utiliser les connexions locales.

La suite et les codes d'utilisation demain ...
 



 

Par Nicoeum
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Créer un blog sur over-blog.com - Contact - C.G.U. - Rémunération en droits d'auteur - Signaler un abus