Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684

    Aiuto per modifica slide con class transitions ed effetto fade

    Ciao a tutti,
    ho uno script per "pesca" delle immagini da una cartella "/img" e le visualizza tramite questo codice:

    import mx.transitions.easing.*;
    var slideShow:Function = function (target:MovieClip, shifting:Number, xSections, ySections, random, ease) {
    var mclo:MovieClipLoader = new MovieClipLoader();
    var mcli:Object = new Object();
    var index:Number = 1;
    mcli.onLoadProgress = function(target:MovieClip, lbytes:Number, tbytes:Number) {
    trace("Caricamento..."+Math.floor((lbytes/tbytes)*100)+"%");
    };
    mcli.onLoadError = function(target:MovieClip, errorCode:String) {
    if (errorCode == "URLNotFound") {
    slideShow(target, shifting, xSections, ySections, random, ease);
    }
    };
    mcli.onLoadInit = function(target:MovieClip):Void {
    index++;
    target._alpha = 100;
    var scale:Object = new ScaleSquare(target, xSections, ySections, target._width, target._height, random, ease, 1);
    scale.onMotionFinished = function() {
    var a = setInterval(function () {
    clearInterval(a);
    var t:Object = new mx.transitions.Tween(target, "_alpha", None.easeNone, 100, 50, .5, true);
    t.onMotionFinished = function() {
    mclo.loadClip("img/"+index+".jpg", target);
    };
    }, shifting*1000);
    };
    };
    mclo.addListener(mcli);
    mclo.loadClip("img/"+index+".jpg", target);
    };
    var test:MovieClip = _level0.createEmptyMovieClip("test", 1);
    // slideShow(nomeIstanzaClip, tempoPermanenzaFoto, numeroQuadratiniOrizzontali, numeroQuadratiniVerticali, comparsaQuadratiniRandom, tipoDiEase);
    slideShow(test, 1, 5, 5, true, Back.easeOut);


    Vorrei che l'animazione, dopo l'effetto "transition", NON esegua il "fade" in uscita ma continui a visualizzare le immagini presenti nella cartella sempre con lo stesso effetto.

    Come devo modificare il codice???

    Grazie per il vostro aiuto.

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Nessuno sa darmi una mano per togliere il "fade" e far rimanere la sola "transizione" da foto a foto?


    Grazie

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Ho provato a modificare il valore del "fade" da 50 a 100:

    var t:Object = new mx.transitions.Tween(target, "_alpha", None.easeNone, 100, 50, .5, true);

    ed ora l'effetto non c'è più ma c'è ancora quel fastidioso "stacco" tra una foto e l'altra.

    Come faccio ad eliminarlo? Intanto provo a fare dei test ma se mi date una mano...e meglio!


  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Un aiutino?

  5. #5
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Mr_flash riconosco il codice un po' modificato in uno che avevo scritto io e ti dico che giusto qualche giorno fa ho risposto ad una richiesta praticamente identica alla tua inserendo anche il codice risultante. Verifica, forse è ancora in prima pagina.

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Sono andato a verificare e il thread l'avevi iniziato proprio tu, ma allora perchè non hai prseguito lì?! Ero convinto che fosse tutto apposto. Se apri un nuovo thread perdiamo tutte le informazioni acquisite fino a quel momento. Boh, fai un po' tu.

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Ciao And80, sì è un codice scritto da me e "mixato" sempre con istruzioni prese dal forum.

    Provo a fare una ricerca, spero di trovare quello che mi serve.

    Grazie

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Originariamente inviato da Mr_Flash
    Ciao And80, sì è un codice scritto da me e "mixato" sempre con istruzioni prese dal forum.

    Provo a fare una ricerca, spero di trovare quello che mi serve.

    Grazie

    Ho pensato di aprirne un altro perchè, magari sbagliando, credevo di avere esigenze diverse anche se il codice è simile a quello già postato. Il codice nell'altro thread continua a non funzionare, così come l'esempio che mi hai indicato nel link.
    Qui ho invece necessità di modificarne uno che funziona a dovere ma che vorrei eliminasse un effetto "fade" e facesse rimanere solo la transizione della classe.
    Mi scuso se ho fatto confusione.
    Grazie

  9. #9
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Il codice è praticamente lo stesso, solo che invece di utilizzare due movieclip ne usa uno solo per il caricamento. Mi pare strano che questo ti funzioni e l'altro no, il mecccanismo coinvolto è il medesimo.
    Mi pare nell'altro thread di averti suggerito di postare direttamente la tua prova compresa di immagini, ma non ricordo se l'avevi fatto.

    Che ti dico, prova a modificare dove hai messo 100, 50 e metti 100, 100.

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    684
    Ho rifatto dei test ed ora funziona, magari non inserisco all'inizio la sigla
    import mx.transitions.easing.*; ? A questo punto non so più che dire, l'importante è che funziona a dovere, senza più l'effetto "fade".

    Ecco il codice:

    import mx.transitions.easing.*;

    function interceptMovieClip (target_mc:MovieClip):MovieClip {
    var temp:MovieClip = (target_mc._name == "firstMC") ? secondMC : firstMC;
    return temp;
    };
    function slideShow (target:MovieClip, index:Number, shifting:Number) {
    var other = interceptMovieClip(target);
    var int_index = index;
    var mclo:MovieClipLoader = new MovieClipLoader();
    var mcli:Object = new Object();
    mcli.onLoadError = function(target:MovieClip, errorCode:String) {
    if (errorCode == "URLNotFound") {
    slideShow(target, index, shifting);
    }
    };
    mcli.onLoadInit = function(target:MovieClip):Void {
    trace("img/"+int_index+".jpg");
    int_index += 2;
    var t:Object = new ScaleSquare(target, 5, 5, target._width, target._height, true, null, 0.5);
    t.onMotionFinished = function() {
    var a = setInterval(function () {
    clearInterval(a);
    mclo.loadClip("img/"+int_index+".jpg", target);
    target.swapDepths(other);
    }, shifting*1000);
    };
    };
    mclo.addListener(mcli);
    mclo.loadClip("img/"+int_index+".jpg", target);
    };
    var time_to_slide:Number = 5;
    var firstMC:MovieClip = this.createEmptyMovieClip("firstMC", 1);
    var index1:Number = 1;
    var secondMC:MovieClip = this.createEmptyMovieClip("secondMC", 2);
    var index2:Number = 2;
    slideShow(firstMC, index1, time_to_slide*2);
    setTimeout(slideShow, time_to_slide*1000, secondMC, index2, time_to_slide*2);


    A questo punto faccio un'altra domanda che...sorge spontanea

    Nel caso volessi applicare una nuova classe, che non sia la "ScaleSquare", mi basterà solamente cambiare questa linea di codice:

    var t:Object = new ScaleSquare(target, 5, 5, target._width, target._height, true, null, 0.5);

    oppure no?

    Grazie infinite

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.