Accueil > Forum > > > > Création dynamique de plusieurs MovieClip dans une boucle AS3
Création dynamique de plusieurs MovieClip dans une boucle AS3
mardi 16 décembre 2008 à 00:37:45 |
Création dynamique de plusieurs MovieClip dans une boucle AS3

sep2vigne
|
Bonjour, Voici mon code :
for ( var i:int = 0; i < 20; i++ ) { //... Je dessine un cercle noir de diamètre 20px positionné à 100px des bords haut et gauche : var cercle:Shape = new Shape(); cercle.graphics.beginFill(0x000000); cercle.graphics.drawCircle( 100, 100, 20 ); //... Je crée un MovieClip qui va contenir mon cercle : var conteneur:MovieClip = new MovieClip(); conteneur.addChild( cercle); //... Puis j'ajoute mon MovieClip à la liste des objets affichés sur la scène : addChild( mp3Ball ); //... Enfin, j'appel une classe qui déplace mon MovieClip vers de coordonnées tirées aléatoirement dans une boucle ENTER_FRAME : //... Les paramètres passés au constructeur de ma classe MvmtAleatoire sont : //... le MovieClip à déplacer //... la limite minimum des nouvelles coordonnées sur X et Y //... la limite maximum des nouvelles coordonées sur X //... la limite maximum des nouvelles coordonées sur Y var mouvement:MvmtAleatoire = new MvmtAleatoire( mp3Ball, marge, stage.stageWidth - marge, stage.stageHeight - marge); }
RESULTAT :Je me retrouve bien avec 20 cercles noires sur la scène. Il sont placés à des coordonnées d'origine aléatoires (comme demandé dans le constructeur de MvmtAleatoire). Ils entamment bien tous un premier déplacement vers des coordonnées toutes aléatoires et différentes.
MON PROBLEME :Dès le 2e Déplacement, tous mes MovieClip viennent se positionner au même Y puis varient uniquement sur X. De plus, lorsque j'appel la fonction stop(); de MvmtAleatoire (fonction qui consiste simplement à supprimer le Event.ENTER_FRAME qui anime mes cercles) cela ne stop que le dernier MovieClip crée dans la boucle . TOUT CA POUR DEMANDER (car je pense que mon soucis vient "en autre" de là mais c'est pour cette quéstion précisément que je viens vous voir) : Comment créer une variable MovieClip à la volée dans une boucle, lui assigner un nom d'instance propre (mc_0, mc_1, mc_2 ...), lui affecter des événements ...
EN BREF :Existe-t-il un équivalent au set( "blabla", true ) mais du genre set( "mc_" + i, MovieClip ) ... comprenez-vous ?
Le fait d'écrire var mc:MovieClip = new MovieClip(); dans une boucle > cela signifie donc qu'à chaque tour ma variable est écrasée et remplacée par une nouvelle possédant le même nom. Mais comment faire pour que l'accès à la variable du tour précédent ne soit pas définitivement perdu ? Je n'arrive pas à comprendre comment utiliser efficacement la concaténation en AS3.
Vous souhaitant de bonnes fêtes, A+, Seb
|
|
mardi 16 décembre 2008 à 00:44:58 |
Re : Création dynamique de plusieurs MovieClip dans une boucle AS3
|
mardi 16 décembre 2008 à 20:53:12 |
Re : Création dynamique de plusieurs MovieClip dans une boucle AS3

sep2vigne
|
Salut Pegase,
Merci beaucoup pour ton retour qui va me permettre de débloquer mon projet. Avant d'aller tester tout ça, je me pose une question :
Etant donné que ma Shape n'est qu'une forme ajoutée à un movieClip. Une fois qu'elle est addChildée, je n'ai plus rien d'autre à lui demander (en tout cas rien de directement adressée à elle sans passer par son conteneur ... bref). Aussi je pense plutôt utiliser .name pour donner un nom à mon MovieClip.
Le petit grain qui continue de me tracasser : Imaginons que dans une bouble for, je déclare une nouvelle variable "var conteneur:MovieClip = new MovieClip();" Je nomme ensuite mon MovieClip fraichement déclaré de la fçon que tu m'as indiquée : conteneur.name = "truc_" + i; Au tour suivant de la boucle for, lorsque le code va relire "var conteneur:MovieClip = new MovieClip();", ne va-t-il pas considérer la variable "conteneur" comme étant un nouveauMovieClip (vide donc). Comment est-il alors possible que mon "conteneur" du tour précédent existe encore à ce moment là ?...
De plus je déclare une autre variable "mouvement", instance de ma classe MvmtAleatoire. Le constructeur de cette classe récupère en paramètres le dernier MovieClip "conteneur" connu pour ce tour de boucle. Il lui ajoute un EventListener (particulièrement moche > ENTER_FRAME) . >>> Mais du coup si mon conteneur est écrasé entre temps, tout comme mon instance de "mouvement", sauvagement remplacée au tour de boucle suivant par une nouvelle instance ... portant le même nom ... comment je fais pour parler à l'un ou appeller la méthode de l'autre ???? Dernière quéstion en coup d'vent : pour utiliser .name sur une occurence de ma classe mouvementAleatoire, dois-je définir au préalabale une fonction name() dans ma classe ou uniquement une variable String qui stock la valeur donnée.
Bon j'arrette pasque je pourrai continuer comme ca toute la nuit,
A+, Seb
|
|
mardi 16 décembre 2008 à 21:20:33 |
Re : Création dynamique de plusieurs MovieClip dans une boucle AS3
|
mercredi 17 décembre 2008 à 00:46:45 |
Re : Création dynamique de plusieurs MovieClip dans une boucle AS3

sep2vigne
|
- bonheur - bonheur partiel : oui mais une erreur devrait logiquement être relevée si la nouvelle occurrence "conteneur = new .." n'écrase pas l'ancienne occurrence. Je ne peux pas avoir deux occurrence "conteneur" ..?? je crois que j'suis en train de mélanger les noms de variables avec les bons vieux _mc... - bonheur partiel itou : la classe MvmtAleatoire est une de mes classes, et comme je n'ai pas crée de propriété "name" dans cette classe je n'peux pas faire MvmtAleatoire.name ... si ? (c'était cette question que j'me posai tout à l'heure).
En tout cas big up comme on dit ;) a+, Seb
|
|
mercredi 17 décembre 2008 à 09:42:42 |
Re : Création dynamique de plusieurs MovieClip dans une boucle AS3
|
jeudi 18 décembre 2008 à 02:23:07 |
Re : Création dynamique de plusieurs MovieClip dans une boucle AS3

sep2vigne
|
Et bin tu vois quand tu veux  Bon c'est cool, j'ai plus aucun souci pour cibler mes clips en utilisant le getChildByName( "machin_" + i ); J'aime de plus en plus l'AS3. la prochaine étape c'est de m'assurer que je supprimer bien tous ce que je crée (listener, var plu utilisées... occurences .. bref tout ca)
Merci beaucoup pour cette échange, En ésperant pouvoir t'aider un jour, Seb
|
|
Cette discussion est classée dans : boucle, var, movieclip, cercle, mvmtaleatoire
Répondre à ce message
Sujets en rapport avec ce message
Problème de rafraîchissement sur un composant Horloge [ par Venusx117 ]
Bonjour,Nouvel arrivant sur Flash8, je m'intéresse à la création de composants.Ainsi, j'ai tenté de développer un composant Watch (montre) qui indique
Barre de chargement problème sour I.E. pas sous fireFox [ par embalmer ]
Bonjour, Voilà je vous explique mon problème, j'ai crée une animation débutant par une barre de chargement. En plus de ce qui se trouve à la racine
Mon attachMovie ne fonctionne pas.... [ par way2web ]
Bonjour,j'essaye vainement d'attacher un movieClip à un autre chargé par loadClip, je le fais au onLoadInit et rien ne veut s'attacher :? , une tenta
Syntaxe dans une boucle [ par kiwan ]
Bonjour,Je charge des textes dynamiquement dans un fichier flash. Je veux réaliser une boucle pour charger mes différents textes. Je déclare mais vari
loadClipFolie [ par MangueCarotte ]
Bonjour,J'essaie tt simplement de charger mon image"web_designer_graphiste2.jpg" ds mon clip.Mon image se trouve bien entendu la ou se trouve mon fla
transfrmer jpeg en movieClip (as3) [ par guillaumelavezzari ]
Bonjour à tous!Je bute depuis pas mal de temps sur la transformation d'un jpeg chargé dynamiquement en movie clip...Et j'ai besoin de faire cela, car
déclaration variable boucle [ par xaviergainsbourg ]
hello, Question : comment déclarer des variables dans une boucle ?exemple qui ne marche pas ://methode pour les nombres aléatoires function getRand
Récupérer les coordonnées de la souris [ par TrevorReznik ]
Bonjour,J'ai une question de débutant !!!Je suis tombé sur un tutoriel dont une partie du code pour récupérer les coordonnées de la souris et les attr
Probleme variable = 0 [ par Orange73 ]
hello,voila j'ai un soucis de variable (AS3).J'ai le code suivant :import flash.events.*;var nbItems:int = 6;var i:int;var id:int;var currentId:Number
Chargements de données et execution du code ... pas top. [ par on_drag_on ]
Bonjour à tous.Bon mon titre est pas génial mais comme je saisis pas mon problème j'ai un peu de peine à le décrire. Alors voilà, pour mon pénible app
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|