Precharger fichiers *.jpg d'un dossier

[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007 - 1 déc. 2006 à 19:14
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007 - 4 déc. 2006 à 23:31
Bonjour,

je debute en flash et j'aimerai precharger toutes les images *.jpg d'un dossier pour pouvoir passer ensuite de l'une a l'autre sans chargement.

Quelqu'un pourrait t'il m'indiquer la demarche a suivre ?

Merci.

22 réponses

julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
2 déc. 2006 à 00:15
salut préchargement d image a l interieur de l animation flash ? dans ce cas c'est un préload de l annimation qu il te faut . Sinon il faudrai préciser un peu la question
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
2 déc. 2006 à 00:35
En fait je dispose d'un dossier dans lequel ce situe plusieurs photos prisent en mode rafale d'une ouverture d'un toit d'une voiture cabriolet.
Mon but est de creer un animation flash qui permette de lire ces photos du dossier a la chaine pour ainsi rendre l'effet de video, mais aussi de permettre une animation image par image avec zoom..
Car contrairement a la video la photo permet de mieux zoomer sans perte de qualite.
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
2 déc. 2006 à 17:35
bonjour, ok mais avec flash il va faloir importer toute les photos dans la bibliotheque puis les mettrent une par une sur l image clef, inserer une autre image clef puis mettre l image suivant ainsi de suite comme ca lors du lancement de l animation il y aura l effet video .  S' il y a beaucoup d image faut voir avec l action script peut etre mais de toute facon il faudra quand meme toutes les mettres dans l animation alors l animation risque d etre lourde mais avec un petite préchargement de l animation c est bon je pense après toute dépent du du moyen de diffusion .
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
2 déc. 2006 à 21:31
Ok donc pour toi la solution serait de faire un swf pour chaque animation.
Par contre j'aurai preferer faire un swf standard qui irait lire les fichiers image d'un dossier pour pouvoir le reutiliser.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
2 déc. 2006 à 21:37
c est vrai que ca serait cool si tu veux faire plusieur animation de ce style avec un fichier standard mais le probleme c est que flash peut pas parcourir un dossier .... alors peut etre avec un fichier xml que flash c est trés bien lire tu lui donne les chemins de tes images et donc c est standart après mais il faudrait paramettrer le fichier xml masi bon la il y a plusieur language qui peuvent te créer ce fichier xml .
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
2 déc. 2006 à 21:40
j ai oublié de te dire donc tu prends l url de image dans flash avec le fichier xml est tu la charge avec loadClip() et donc ca devrait aller par contre il faudra que tu places ce clip sur la scene en action script.
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
2 déc. 2006 à 21:45
Ok. Donc la seule solution en flash c'est d'aller lire un fichier externe comme un fichier xml ou txt, je pense que ca peut etre jouable, merci.
J'aurai un autre question, le prechargement des images comment ca marche en flash ?
Je vais charger une 50aines de photos de 500ko env. car il faut que l'affichage soit rapide quand on passe de l'une a l'autre des photos.
Est ce la bonne methode de precharger toutes mes photos avant le lancement ou existe t'il une autre technique ?
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
2 déc. 2006 à 21:54
C est la seule solution flash a des extenstion server qui permet de faire ce genre de chose mais bon c est payant me semple t il au derniere nouvelle . ben a vrai dire je pense que que c est un peu délicat du fait que tu charge tes images a la volé donc le préchargement de l animation ne sert a rien je pense quoi que faut essayer je sais pas tu as des propriétes pour savoir la taille de swf et la nombre octet chargé donc tu peux faire un pourcentage de chargemnt stu veut j ai la source je peux te la passer sinon tu fais une image clef de préchargement tu mets "Chargment en cours" pendant que les loadClip() s executes et après tu lis ton annimation pour avoir ton effet vidéo sans repasser par la premier images clef biensur.
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
2 déc. 2006 à 22:11
Ok merci pour l'idee.
Tu pourrais me donner le code d'un loadClip() pour charger deux images ?
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
2 déc. 2006 à 22:43
Voila si tu veux des explications ou un coup de mains je suis partant

//Je crée un clip vide
var mc1 = _root.createEmptyMovieClip("mc1", this.getNextHighestDepth());
//Je charge l image dans le clip vide créé avant
mc1.loadMovie("Photo-0011.jpg", "mc1");

//Comme mes photos sont trop grandde je l ai redimensiones
mc1._xscale  = 20;
mc1._yscale  = 20;

//Je crée un clip vide
var mc2 = _root.createEmptyMovieClip("mc2", this.getNextHighestDepth());
//Je charge l image dans le clip vide créé avant
mc2.loadMovie("Photo-0012.jpg", "mc2");

//Comme mes photos sont trop grandde je l ai redimensiones
mc2._xscale  = 20;
mc2._yscale  = 20;
//Je deplace en x le clip mc2 pour bien voir les 2
mc1._x  = 290;
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 00:55
Merci beaucoup pour ton aide julien je vais voir ce que je peux faire avec ca et je te recontacte si j'ai des soucis ;)
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 01:47
J'ai fait ca pour le moment, je cherche a switcher entre 2 photos sur le mouvement de la roulette de la souris mais j'ai un bug, j'ai l'impression que mon flash recree mes variables a chaque mouvement de souris :

var mc1 = _root.createEmptyMovieClip("mc1", this.getNextHighestDepth());
var mc2 = _root.createEmptyMovieClip("mc2", this.getNextHighestDepth());
var bFlag:Number = 1;
function nextpic() {
    mc1.loadMovie("image1.jpg", "mc1");
    mc1._xscale = 20;
    mc1._yscale = 20;
}
function prevpic() {
    mc2.loadMovie("image2.jpg", "mc2");
    mc2._xscale = 20;
    mc2._yscale = 20;
}
var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function() {
    if (bFlag == 1) {
        bFlag = 2;
        prevpic();
    } else {
        bFlag = 1;
        nextpic();
    }
};
Mouse.addListener(mouseListener);
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
3 déc. 2006 à 10:05
oui biensur la c est un peut le basard car tu recharges ton images a chaque fois beaucoup trop lourd si c est sur un site alors je te propose ceci (jouer sur la transparence) ca fonctionne mais si tu dois le faire pour toute les photos ca risque etre le basard alors il faudra que tu le fasses avec un switch  case et en fonction du nombre que tu lui donne dans la fonction ca te cachera tout et affichera la bonne si tu n as pas compris fait me le savoir je te ferais voir a plus

//Je crée un clip vide
var mc1 = _root.createEmptyMovieClip("mc1", this.getNextHighestDepth());
//Je charge l image dans le clip vide créé avant
mc1.loadMovie("Photo-0011.jpg", "mc1");



//Comme mes photos sont trop grandde je l ai redimensiones
mc1._xscale  = 30;
mc1._yscale  = 30;





//Je crée un clip vide
var mc2 = _root.createEmptyMovieClip("mc2", this.getNextHighestDepth());
//Je charge l image dans le clip vide créé avant
mc2.loadMovie("Photo-0012.jpg", "mc2");



//Comme mes photos sont trop grandde je l ai redimensiones
mc2._xscale  = 30;
mc2._yscale  = 30;





var bFlag:Number = 1;
function nextpic() {
mc1._alpha = 0 ;
mc2._alpha = 100;



}
function prevpic() {
mc1._alpha = 100 ;
mc2._alpha = 0;
}



var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function() {
    if (bFlag == 1) {
        prevpic();
  bFlag =0;
    } else {
           nextpic();
     bFlag = 1;
    }
};
Mouse.addListener(mouseListener);
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 14:43
Je pense que c'est une bonne idee de jouer sur la transparence, j'essaye ca ce soir !
Pour l'histoire du switch case j'ai tres bien compris et ca me parait faisable aussi.
Je teste ca ce soir et je te tiens au courant.
Merci beaucoup pour ton aide ;)
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 16:48
Ca marche super bien !!!! Merci.
Par contre j'ai 3 questions :
    - Pourquoi suis je oblige de cliquer sur l'image avant de pouvoir utiliser la roulette ? (la premiere image se charge, si je ne clique pas sur la photo ma roulette ne fonctionne pas)
    - Comment integrer mes images dans un cadre, pour pouvoir ajouter mes boutons, suivant precedent sous l'image ?
    - Par exemple je sais que j'ai 10 images. Comment pourrais je faire pour creer 10 clips vide (mc1,mc2,mc3, ..., mc10.) en executant une boucle et non en le "hard codant" ?

Merci.
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 16:49
Desole j'ai oublie de te montrer mon code actuel :

//Clip vide
var mc1 = _root.createEmptyMovieClip("mc1", this.getNextHighestDepth());
//Charge l'image dans le clip vide
mc1.loadMovie("image1.jpg", "mc1");
//Redimensionnement
mc1._xscale = 20;
mc1._yscale = 20;
//Clip vide
var mc2 = _root.createEmptyMovieClip("mc2", this.getNextHighestDepth());
//Charge l'image dans le clip vide
mc2.loadMovie("image2.jpg", "mc2");
//Redimensionnement
mc2._xscale = 20;
mc2._yscale = 20;
//Clip vide
var mc3 = _root.createEmptyMovieClip("mc3", this.getNextHighestDepth());
//Charge l'image dans le clip vide
mc3.loadMovie("image3.jpg", "mc3");
//Redimensionnement
mc3._xscale = 20;
mc3._yscale = 20;
var curPic:Number = 1;
function changepic(pic) {
    mc1._alpha = 0;
    mc2._alpha = 0;
    mc3._alpha = 0;
    switch (pic) {
    case 1 :
        mc1._alpha = 100;
        curPic=2;
        break;
    case 2 :
        mc2._alpha = 100;
        curPic=3;
        break;
    case 3 :
        mc3._alpha = 100;
        curPic=1;
        break;
    }
}
var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function() {
    changepic(curPic);
};
Mouse.addListener(mouseListener);
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
3 déc. 2006 à 16:55
alors le clique je  m en suis rendu compte c est à cause du focus je pense donc en action script on doit pouvoir donner le focus une fois l animation chargé  sans probleme ensuite biensur avec une boucle for y a pas de soucis pour créer 10 clips( si tu veux un coup de main fait moi signe)  et puis pour tes cadres il suffit que tu mettes tout ce codes dans  un clip nomé animation par exemple et puis voila quand tu déplaceras le clip animation tout l animation ce déplacera en meme temps en fait c est un genre de frame que tu veux ? reformule la seconde question stp si j ai répondu a coté de la plaque a plus
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 17:24
Ok je vais chercher pour le focus. J'ai essaye Selection.setFocus("mc1") mais ca marche pas enfin ca je pense que je vais pouvoir trouver.
Par contre pour creer 10 clips je vois toujours pas comment faire. Un truc du genre :
for (i= 0;i<10;i++){
    var mc[i] = _root.createEmptyMovieClip("mc[i]", this.getNextHighestDepth());
     mc[i].loadMovie("image"+i+".jpg", "mc"+i);
}  ?
Sinon pour mon cadre je voudrai afficher mes image dans un cadre pas sur toute la partie de mon flash :
Voila en gros ce que je recherche :
 ___________
|                       |    < = cadre dans lequel j'affiche mes images
|                       |
|                       |
| __________  |
<<                >>   <= petit menu avec mes boutons

car actuellement mon image s'affiche dans ton mon espace disponible.
Merci.
0
julieninformatique Messages postés 55 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 7 août 2007
3 déc. 2006 à 17:54
ben pour le cadre c est a toi de possitier les photos au bon endroit alors pour plus de facilité je te propose de mettre tout le code de gestion des images dans un clip et donc toute les images seront crée dans celui ci et en action script tu place en fait juste le clip complé a l endroit ou tu veux et puis mettre tes truc de navigation ou bon te semple sinon pour le code  de la boucle la voici met je tiens a te préciser ma démarche en effet je crée un clip vide pour faire un model et après je le duplique le nombre de fois de la boucle donc i sera de  la valeur que tu veux j ai mi le egale comme et commencé a 1 comme ca on connai facilement le nombre de boucle qu il fait ici 2 car tes evenement de la souris gere que 2 clip donc a toi de joué pour modifier la gestion de transparence en fonction du nombres de clip crée et puis tu changeras i en fonction des besoins  ensuite voila

var clip = _root.createEmptyMovieClip("mc", this.getNextHighestDepth());
for (i=1;i<=2;i++){
    duplicateMovieClip(_root.clip, "mc" + i , i)
    //new_clip corespond au nom du nouveau clip cré
    new_clip = eval("mc" + i);
    new_clip.loadMovie("image" + i +  ".jpg", "mc" +i);
    new_clip._xscale = 20;
    new_clip._yscale = 20;

}
0
[bNj] Messages postés 13 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 11 février 2007
3 déc. 2006 à 23:34
Merci tout marche tres bien pour le moment.
Pour mon cadre j'ai vu qu'on pouvait utiliser new_clip._x et new_clip._y pour positionner le clip.
Par contre j'ai un probleme au niveau du _xscale et _yscale comment calculer la bonne valeur de xscale et yscale en fonction de la taille de mes images ?
Merci.
0
Rejoignez-nous