Le Blog

  • : Le blog de Romain Dedenis
  • : Un blog relatif à la programmation web, vous trouverez ici des tutoriels sur différents langages tel que le flash, le php... Ainsi que différentes astuces et articles. Bonne visite :)
  • Contact

Contacts

viadeo-icone-5757-48.png linkedin.png

Liens Utiles

 

Documentation Flash as 3.0 :

Flash as 3.0

 

Documentation moteurs 3D Flashs :


Documentation Utilitaires 3D Flashs :

Et bien sûr, le fil RSS du Blog ! rss

16 avril 2010 5 16 /04 /avril /2010 14:16

dmtoolkit

 

 I/ Installation du DMToolkit.

Une fois que vous aurez téléchargé la dernière version du DMToolkit ( DMToolkit : Bibliothèque de Détection de mouvements ), il ne vous restera plus qu'à l'extraire.

Ensuite, nous allons lier Flash à la bibliothèque DMToolkit une bonne fois pour toute, nous permettant ainsi de pouvoir l'utiliser sans avoir à se soucier de son emplacement.
Pour se faire :

  • lancer Adobe Flash.
  • dans le menu Modifier aller dans Préférences, une fenêtre s'ouvre.
  • dans Catégories, selectionner ActionScript puis cliquer sur Paramètres d'ActionScript 3.0...inst_papervision1-copie-1.jpg
  • Enfin, dans chemin source, cliquez sur le plus et ajouter le chemin vers le répertoire de DMToolkit. Généralement, placer le dans le répertoire d'installation de Flash, de manière à ne pas corrompre le chemin d'accès à la bibliothèque en la déplaçant par inadvertance.inst_papervision2.jpg


II/ Lier un fichier .fla et .as


Je vais un peu m'attarder pour ce premier tutoriel sur le linkage entre une classe et la scène pour que nous partions sur de bonnes bases dès le départ, ceci nous aideras à avoir la même architecture et évité ainsi d'éventuelles erreurs par la suite.

Dans un premier temps, créer un nouveau fichier "Fichier Flash (AS 3.0)" que vous nommerez dmtoolkit.fla par exemple ainsi qu'un fichier "Fichier ActionScript" que vous nommerez Main.as dans le même dossier que le fichier .fla (attention à bien respescter les minuscules/majuscules car Flash est sensible à la case).

Maintenant, passons à la liaison de nos fichiers fla et as :inst_papervision3.jpg
Dans le champs Classe, entrez Main correspondant à notre classe que nous souhaitons associer à notre document Flash (.fla). Ensuite, un message d'avertissement apparaît, n'en tenez pas compte, valider avec Ok.

III/ Réalisation de notre squelette DMToolkit.

Maintenant que nous partons sur les mêmes bases, nous pouvons passer à la réalisation de notre squelette DMToolkit que nous réutiliserons dans chacuns des prochains tutoriels.

Donc, dans un premier temps, je vais vous donner le squelette en entier, que vous devrez copier dans le fichier Main.as, je passerais aux explications par la suite. Je vous conseille tout de même avant de les lire, d'essayer de comprendre le fonctionnement du squelette par vous même, puis de conforter vos déductions avec les explications.

Code source du squelette :

package{
    //flash imports
    import flash.display.*;
    import flash.geom.*;
   
    //DMToolkit imports
    import DMToolkit.core.*;
   
    public class Main extends Sprite{
        private var dmt:DMToolkit;
      

        public function Main(){

            //voir explication 1

            dmt = new DMToolkit(stage, actions);
        }

        //voir explication 2
        public function actions():void{

            
        }
    }
}


Explication 1:
Dans cette partie du code, nous initialisons la bibliothèque DMToolkit :

 

new DMToolkit(container, callback);

  • container : il est du type DisplayObjectContainer, généralement passer lui stage.
  • callback : représente une fonction qui sera appelée si le mouvement est détecté selon les critères que nous aurons définis (nous aborderons celà dans un prochain tutoriel).


Explication 2:
Ici, actions est la fonction de callback que nous passons au DMToolkit, elle contient les actions à effectuer si le mouvement est détecté et correspond aux critères définis.

 

 

Voici pour ce premier tutoriel qui visait à installer et créer notre squelette. Ceci est un squelette, il n'affiche rien du tout, ni ne détecte de mouvements pour le moment ;).

Rendez-vous très prochainement pour le prochain tutoriel( DMToolkit : Première détection ) où cette fois-ci, nous allons commencer véritablement à détecter des mouvements et étudier plus en profondeur le DMToolkit.



Ce tutoriel vous a été utile? rss Abonnez-vous au fil RSS !



Cordialement, Romain Dedenis.
Partager cet article
Repost0

commentaires

B
<br /> <br /> Rien à faire..... <br /> <br /> <br /> <br />
Répondre
B
<br /> <br /> impossible d'ouvrir le .fla... ? format de fichier inatendu... lorsque je lie l'as que je viens de telecharger et mon .fla initial j'ai le meme message d'erreur que dans les posts precedents<br /> <br /> <br /> <br /> <br />
Répondre
R
<br /> <br /> Oups désolé, c'est du CS5...<br /> <br /> <br /> Par contre ce n'est pas normal que tu es toujours le même message d'erreur :/. Créer un nouveau projet  et lie le .as que je t'ai donné. Dis moi s'il y a toujours des erreurs.<br /> <br /> <br /> <br />
B
<br /> <br /> comme quoi le tuto porte bien son nom ^^<br /> <br /> <br /> Meme en otant la partie, j'ai la meme erreur : 1037: Les packages ne peuvent pas être imbriqués...<br /> <br /> <br /> <br />
Répondre
R
<br /> <br /> Tiens, télécharge ça premier pas...<br /> <br /> <br /> <br />
B
<br /> <br /> Bien j'ai simplement suivi (je crois) les indications :<br /> <br /> <br />  <br /> <br /> <br /> <br /> //imports des classes<br /> import flash.media.Camera;<br /> import flash.media.Video;<br /> <br /> //création d'une nouvelle Camera<br /> var camera:Camera = Camera.getCamera();<br /> camera.setMode( 640, 480, 30 ); //setMode( width, height, ips )<br /> //création du conteneur recevant la vidéo ici définit à width=640px et height = 480px<br /> var video:Video = new Video( 640, 480 );<br /> //on attache la caméra à la vidéo<br /> video.attachCamera( camera );<br /> //on ajoute le conteneur à la scène<br /> addChild(video);<br /> <br /> package {<br />     import flash.display.*;<br />     import flash.geom.*;<br />  <br />     import DMToolkit.core.*;<br /> <br />     import DMToolkit.core.analyzers.*;<br /> <br />     import DMToolkit.core.detectors.*;<br /> <br />     import DMToolkit.core.accelerators.*;<br /> <br />  <br />     public class Main extends Sprite{<br />         private var dmt:DMToolkit;<br />      <br /> <br />         public function Main(){<br /> <br />             dmt = new DMToolkit(stage);<br /> <br />  <br /> <br />             // création de l'analyseur<br />             var analyzer = new ZoneAnalyzer(actions, new Rectangle(0,0,100,100));<br />             dmt.setAnalyzer(analyzer);<br />           <br />             // création du détecteur<br />             var detector = new FrameByFrameDetector(80, true);<br />             dmt.setDetector(detector);<br />           <br />             //création de l'accelerateur de détection<br />             var accelerator = new SizeAccelerator(1);<br />             dmt.setAccelerator(accelerator);<br />           <br />             //démarrage de la capture de mouvements<br />             dmt.start();<br /> <br />  <br /> <br />         }<br /> <br />      <br />         public function actions():void{<br /> <br />             trace("Mouvement détecté !");<br />         }<br />     }<br /> }<br /> <br /> <br /> <br /> <br /> <br /> <br />
Répondre
R
<br /> <br />   Supprime cette partie :<br /> <br /> <br /> <br /> //imports des classes<br /> import flash.media.Camera;<br /> import flash.media.Video;<br /> <br /> //création d'une nouvelle Camera<br /> var camera:Camera = Camera.getCamera();<br /> camera.setMode( 640, 480, 30 ); //setMode( width, height, ips )<br /> //création du conteneur recevant la vidéo ici définit à width=640px et height = 480px<br /> var video:Video = new Video( 640, 480 );<br /> //on attache la caméra à la vidéo<br /> video.attachCamera( camera );<br /> //on ajoute le conteneur à la scène<br /> addChild(video);<br /> <br /> <br /> <br />
B
<br /> <br /> Bonjour,<br /> <br /> <br />  <br /> <br /> <br /> J'essaie de suivre votre tuto, mais flash m'indique l'erreur :<br /> <br /> <br /> 1037: Les packages ne peuvent pas être imbriqués....?<br /> <br /> <br /> Un indice ?<br /> <br /> <br /> <br />
Répondre
R
<br /> <br /> En gros, dans ton code tu dois avoir un truc du genre :<br /> <br /> <br />  <br /> <br /> <br /> package{<br /> <br /> <br />    public class TaClasse{<br /> <br /> <br />       package{<br /> <br /> <br />       }<br /> <br /> <br />    }<br /> <br /> <br /> }<br /> <br /> <br />  <br /> <br /> <br /> Montre moi ton code si tu veux.<br /> <br /> <br /> <br />