Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Funzione setTransform per sfumare da colore a colore

    Ciao ragazzi, dovrei fare un clip che passa da un colore A ad un colore B, siccome le combinazioni sono molte la cosa non si limita a questo ma può passare quindi da A a C, da B a C
    etc.
    Qualcuno ha una funzione del genere? In pratica si tratterebbe di passare alla funzione il colore di partenza e il colore di arrivo, e la funzione cambierebbe i parametri di setTransform ad ogni frame finché non si raggiunge l'RGB finale, ma la transizione deve essere coerente, personalmente non conosco la formula per la progressione dei tre colori.

    Ah, Sto sul primo MX, Flash Player 6 mi pare.

  2. #2
    Scusate, ho risolto con la ricerca.

    Ho modificato una funziona trovata in giro risolvo così

    codice:
    Number.prototype.HEXtoRGB = function(){
    	return {rb:this >> 16, gb:(this >> 8) & 0xff, bb:this & 0xff};
    }
    Color.prototype.blendRGB = function(c1,c2,t){
    	if (arguments.length == 2){
    		t = c2;
    		c2 = this.getRGB();
    	}
    	if (t<-1) t=-1;
    	else if (t>1) t=1;
    	if (t<0) t=1+t;
    	c1 = c1.HEXtoRGB();
    	c2 = c2.HEXtoRGB();
    	var ct = (c1.rb+(c2.rb-c1.rb)*t) << 16 | (c1.gb+(c2.gb-c1.gb)*t) << 8 | (c1.bb+(c2.bb-c1.bb)*t);
    	this.setRGB(ct);
    	return ct;
    }
    
    function Colora(trg, da, a, doBlend){
    	col = new Color(trg)
    	trg.onEnterFrame=function(){
    		col.blendRGB(a,da, doBlend);
    		doBlend -= .05; // for 100 frames: 1/100 = .01
    		if (doBlend < 0) delete this.onEnterFrame
    	}
    }
     
    /******************** EXAMPLE ********************/
    
    
    Colora(fondo,0x84161A,0x0000FF,1) // Colora(target, partenza, arriva, verso)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.