Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560

    effetto dissolvenza foto + maschera sul livello superiore

    ciao a tutti, è possibile mettere una maschera o semplicemente un rettangolo che copra parte della foto che è in dissolvenza? se provo a metterlo sul livello superiore l'immagine che viene caricata esternamente sovrasta ugualmente la maschera o rettangolo:

    come si può risolvere? grazie

    codice:
    // set random # variables - each must be 0 for first 'while' loop below
    var randomNum = 0;
    var randomNumLast = 0;
    
    // parent container
    var container_mc = this.createEmptyMovieClip("container",0);
    // movie clip containers
    container_mc.createEmptyMovieClip("loader1_mc",2);
    container_mc.createEmptyMovieClip("loader2_mc",1);
    
    // preload watcher
    this.createEmptyMovieClip("watcher_mc",100);
    
    // load xml
    images_xml = new XML();
    images_xml.ignoreWhite=true;
    images_xml.onLoad = parse;
    images_xml.load("images.xml");
    
    function parse(success) {
    	if (success) {
    		imageArray = new Array();
    		var root = this.firstChild;
    		_global.numPause = Number(this.firstChild.attributes.timer * 1000);
    		_global.order = this.firstChild.attributes.order;
    		_global.looping = this.firstChild.attributes.looping;
    		_global.fadetime = Number(this.firstChild.attributes.fadetime);
    		_global.xpos = Number(this.firstChild.attributes.xpos);
    		_global.ypos = Number(this.firstChild.attributes.ypos);
    		var imageNode = root.lastChild;
    		var s=0;
    		while (imageNode.nodeName != null) {
    			imageData = new Object;
    			imageData.path = imageNode.attributes.path;
    			imageArray[s]=imageData;
    			imageNode = imageNode.previousSibling;
    			s++;
    		}
    		// place parent container
    		container_mc._x = _global.xpos;
    		container_mc._y = _global.ypos;
    		// parse array
    		imageArray.reverse();
    		imageGen(imageArray);
    	} else {
    		trace('problem');
    	}
    }
    
    // depth swapping
    function swapPlace(clip,num) {
    	eval(clip).swapDepths(eval("container_mc.loader"+num+"_mc"));
    }
    
    function loadImages(data,num) {
    	if (i==undefined || i == 2) {
    		i=2;
    		createLoader(i,data,num);
    		i=1;
    	} else if (i==1) {
    		createLoader(i,data,num);
    		i=2;
    	}
    }
    function createLoader(i,data,num) {
    	thisLoader=eval("container_mc.loader"+i+"_mc");
    	thisLoader._alpha=0;
    	thisLoader.loadMovie(data[num].path);
    	watcher_mc.onEnterFrame=function () {
    		var picLoaded = thisLoader.getBytesLoaded();
    		var picBytes = thisLoader.getBytesTotal();
    		if (isNaN(picBytes) || picBytes < 4) {
    			return;
    		}
    		if (picLoaded / picBytes >= 1) {
    			swapPlace("container_mc.loader2_mc",1);
    			thisLoader.alpha(_global.fadeTime,100);
    			timerInterval = setInterval(imageGen,_global.numPause,data);
    			delete this.onEnterFrame;
    		}
    	}
    }
    function imageGen(data) {
    	// random, or sequential?
    	if (_global.order=="random") {
    		// choose random # between 0 and total number of images
    		while (randomNum == randomNumLast) {
    			randomNum = Math.floor(Math.random() * data.length);
    			trace(randomNum);
    		}
    		loadImages(data,randomNum);
    		randomNumLast = randomNum;
    	} else if (_global.order=="sequential") {
    		// start at 0, increment to total number of images, then drop back to zero when done
    		if (p==undefined || p==data.length && _global.looping=="yes") { p=0; } else { break; }
    		loadImages(data,p);
    		p++;
    	} else {
    		trace ("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");
    	}
    	clearInterval(timerInterval);
    }
    stop();

  2. #2
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    ho provato ad inserire questa parte di codice:

    codice:
    //imposto anche una maschera alle foto caricate
    container_mc.setMask(miaMask)
    e creato un clip filmato con nome istanza miaMask.. mi crea la maschera..però io vorrei vedere l'effetto contrario..cioè vedere il filmato(rettangolo) sopra l'immagine... come nella prova di crescenzo: http://www.leonardoinformatica.it/xf...ova_slide.html il rettangolo grigio fisso sulla foto...

    come si fa? grazie...

  3. #3
    cioè che vuoi fare ...non ho capito :master:

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  4. #4
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    voglio far rimanere fisso il rettangolino grigio il alto sopra la foto(quello che contiene il testo)...mentre è attivo lo slide delle immagini.. si può fare?

    grazie crescenzo

  5. #5
    certo lo metti fisso ...anzi nn lo fai spostare ...dato che in quel caso ho usato delle tween x farlo spostare... a tempo



    ps qua http://forum.html.it/forum/showthrea...t=createLoader

    ho spiegato come ho fatto....basta che lo piazzi direttamente sulle foto...anzi contenitore foto e nn lo fai spostare
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  6. #6
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    ho provato ad inserire il tuo codice con flash mx 2004 ma mi da errore:

    **Errore** Scena=Scene 1, livello=A, fotogramma=1:Linea 9: Errore di sintassi.
    import mx.transitions.Tween;

    **Errore** Scena=Scene 1, livello=A, fotogramma=1:Linea 10: Errore di sintassi.
    import mx.transitions.easing.Regular;

    Totale errori ActionScript: 2 Errori segnalati: 2


    codice:
    // set random # variables - each must be 0 for first 'while' loop below
    var randomNum = 0;
    var randomNumLast = 0;
    
    //metto il clip sopra i contenitori delle foto
    _root.pro.swapDepths(1000)
    
    
    import mx.transitions.Tween;
    import mx.transitions.easing.Regular;
    
    //creo una function che mi permetterà di spostare il clip della descrizione
    //e a seconda che deve apparire o scomparire gli viene applicato anche un effetto alpha determinato dalla var cosa
    //cosa=0 deve andare via
    //cosa=1 deve comparire
    function spostatitolo(mc, fine, cosa) {
       tipo= Regular.easeOut
       //trace("cosa"+cosa)
       muovititolo = new mx.transitions.Tween(mc, "_y", tipo, mc._y, fine, 10, false);
       if(cosa==0){
           muovititolo = new mx.transitions.Tween(mc, "_alpha", tipo, mc._alpha, 0, 8, false);
       }else{
           muovititolo = new mx.transitions.Tween(mc, "_alpha", tipo, mc._alpha, 100, 8, false);
       }
    }//fine function
    
    
    
    
    // parent container
    var container_mc = this.createEmptyMovieClip("container",0);
    //imposto anche una maschera alle foto caricate
    container_mc.setMask(miaMask)
    // movie clip containers
    container_mc.createEmptyMovieClip("loader1_mc",2);
    container_mc.createEmptyMovieClip("loader2_mc",1);
    
    // preload watcher
    this.createEmptyMovieClip("watcher_mc",100);
    
    // load xml
    images_xml = new XML();
    images_xml.ignoreWhite=true;
    images_xml.onLoad = parse;
    images_xml.load("images.xml");
    
    function parse(success) {
        if (success) {
            imageArray = new Array();
            var root = this.firstChild;
            _global.numPause = Number(root.attributes.timer * 1000);
            _global.order = root.attributes.order;
            _global.looping = root.attributes.looping;
            _global.fadetime = Number(root.attributes.fadetime);
            _global.xpos = Number(root.attributes.xpos);
            _global.ypos = Number(root.attributes.ypos);
            var imageNode = root.lastChild;
            var s=0;
            while (imageNode.nodeName != null) {
                imageData = new Object;
                imageData.path = imageNode.attributes.path;
                imageData.desc = imageNode.attributes.description;
                
                imageArray[s]=imageData;
                imageNode = imageNode.previousSibling;
                //trace(imageArray[s].desc)
                s++;
            }
            // place parent container
            container_mc._x = _global.xpos;
            container_mc._y = _global.ypos;
            // parse array
            imageArray.reverse();
            imageGen(imageArray);
        } else {
            trace('problem');
        }
    }
    
    // depth swapping
    function swapPlace(clip,num) {
        eval(clip).swapDepths(eval("container_mc.loader"+num+"_mc"));
    }
    
    function loadImages(data,num) {
        if (i==undefined || i == 2) {
            i=2;
            createLoader(i,data,num);
            i=1;
        } else if (i==1) {
            createLoader(i,data,num);
            i=2;
        }
    }
    function createLoader(i,data,num) {
        //richiamo la funzione x farlo andare via
        ritorna()
        thisLoader=eval("container_mc.loader"+i+"_mc");
        thisLoader._alpha=0;
        thisLoader.loadMovie(data[num].path);
        watcher_mc.onEnterFrame=function () {
            var picLoaded = thisLoader.getBytesLoaded();
            var picBytes = thisLoader.getBytesTotal();
            if (isNaN(picBytes) || picBytes < 4) {
                return;
            }
            if (picLoaded / picBytes >= 1) {
                swapPlace("container_mc.loader2_mc",1);
                alphaTween = new mx.transitions.Tween(thisLoader, "_alpha", mx.transitions.easing.Regular.easeOut,0,100,_global.fadetime,true);
                timerInterval = setInterval(imageGen,_global.numPause,data);
                delete this.onEnterFrame;
                //qui sposto il titolo
                spostatitolo(_root.pro,15,1)
            }
        }
    }
    
    
    //function x far andare via il titolo prima che copia l'altra foto
    function ritorna(){
        tempo = setInterval(function () {
            spostatitolo(_root.pro,-65,0)
        clearInterval(tempo)},_global.numPause-600);
    }
    
    
    function imageGen(data) {
        // random, or sequential?
        if (_global.order=="random") {
            // choose random # between 0 and total number of images
            while (randomNum == randomNumLast) {
                randomNum = Math.floor(Math.random() * data.length);
                trace(randomNum);
            }
            loadImages(data,randomNum);
            randomNumLast = randomNum;
        } else if (_global.order=="sequential") {
            // start at 0, increment to total number of images, then drop back to zero when done
            if (p==undefined || p==data.length && _global.looping=="yes") { p=0; } else { break; }
                loadImages(data,p);
                trace("desc"+imageArray[p].desc)
                _root.testo.text =imageArray[p].desc;
                _root.pro.description.text=imageArray[p].desc;
            p++;
        } else {
            trace ("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");
        }
        clearInterval(timerInterval);
    }
    stop();
    ho provato anche a inserire
    my_mc.swapDepths(depth)
    nello script originale, ho creato un clip filmato con istanza "depth" e posizionato sul livello superiore ma non funziona... non ho capito come inserire dei pulsanti e clip filmato fissi sopra lo slide

  7. #7
    beh la cosa strana è che ti dia errore nell'importazione della classe tween :master:
    ma sicuro che le impostazione di pubblicazione hai actions script 2 con flash player 7...xchè mi sa che lo feci proprio con flash mx 2004 e da mx in poi le tween fungono...
    anche se poi a te alla fine quelle tween forse nn ti servono dato che le usate x far spostare il clip con le descrizione della foto...
    quindi puoi anche togliere tutta la funzione spostatitolo e di conseguenza anche quelle due righe....

    ma cmq vedi bene le impostazione di publicazione

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  8. #8
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    grazie mille... ho risolto con la maschera...ritagliandola e applicandola nella zona che mi serve..
    cmq poi vedo per le impostazioni..

  9. #9
    diniente figurati



    ps vedi bene xchè le tween fungono con flash 2004.....e deve fungere anche a te..anche xchè cmq le hai usate nel usare l'effetto fade
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

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.