Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Passaggio da Exd a Dec per mycolor.setRGB

    Ciao a tutti,

    non riesco a trovare una forma per gestire il Brightness

    o meglio
    giorni fa ho realizzato un esempio su consiglio di Pasavign
    dove diminuendo di 10 i 3 gruppi RR GG BB riuscivo ad ottenere il Brightness

    quindi utilizzavo:

    codice:
    on(press){
    	if(_root.myR>=10){_root.myR-=10}
    	if(_root.myG>=10){_root.myG-=10}
    	if(_root.myB>=10){_root.myB-=10}
    }
    e quindi sul mio clip di sfondo
    codice:
    onClipEvent(load){
    myColor = new Color(this);
    myColorTransform = new Object();
    }
    onClipEvent(enterFrame){
    myColorTransform = { ra: '100', rb: _root.myR, ga: '100', gb: _root.myG, ba: '100', bb: _root.myB, aa: '70', ab: '70'};
    myColor.setTransform(myColorTransform);
    }
    Adesso ho realizzato una TABColor per cui cliccando su ogni colore
    chiamo una funzione che assegna un valore del tipo
    _root.mycolor="0x003399"


    DOMANDA:

    se volessi scomporre _root.myCOLOR in 3 variabili
    _root.myRR=0
    _root.myGG=51
    _root.myBB=153

    in automatico per qualunque valore di _root.myColor

    COME POSSO FARE?? esiste qualche funzione diretta ??


    Grazie

  2. #2
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    su flashkit
    cerca questo
    RGB_Colo-Marcus_B-8722

  3. #3
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    oppure mandami una mail quì
    alpe_webdesigner@hotmail.com
    che te lo replico.

  4. #4
    Inviato in PVT

    Grazie a più tardi Rempox

  5. #5
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    http://www.microprova.it/forum/RGB_C...cus_B-8722.zip
    è già fatto
    penso sia proprio quello che cercavi

  6. #6
    Ti ringrazio... è esattamente quello che cercavo, anche se di massima non mi piace copiare, ma rifare quello che trovo in giro.

    credo che mi ci vorrà un po prima di capire quel mezzo mega di AS che hanno portato al funzionamento del fla.

    Onestamente speravo che avessero implementato delle funzioni già pronte che permettessero di passare dalla modalita rgb "0x......" a quella decimale rr gg bb

    Comunque grazie molte.

    Tenterò di studiare il tutto.

    Ciao

  7. #7
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    non lo studiato + di tanto
    ma forse fa proprio il contrario
    parte dall'rgb per ottenere l'hex ossia l'input
    lo prende dal pannellino colorato calcolando le coordinate
    e cmq ha incorporato alcuni componenti.

  8. #8
    ho trovato la funzione o meglio la sto costruendo partendo dalla matematica per la conversione di Hex in Dec

    Appena ho finito la posto.


  9. #9
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    ripeto che non lo guardato bene
    ma mi sembra che quella funzione abbia bisogno
    dei valori di hue lum e sat per risalire all'rgb

  10. #10
    Ciao

    ok io sono partito da un altro punto

    ho una variabile _root.myColor che contiene un colore nel formato
    (0x666666)

    la voglio scomporre, quindi ..non sarà il massimo ma funziona!

    codice:
    myColor="0x666666"
    // Funzione che controlla costantemente il contenuto di 
    //_root.mycolor
    // rr1="6",rr2="6",gg1="6",gg2="6",bb1="6",bb2="6"
    _root.onEnterFrame = function(){
    	rr1=substring(substring(_root.myColor,3,2),1,1)
    	rr2=substring(substring(_root.myColor,3,2),2,1)
    	gg1=substring(substring(_root.myColor,5,2),1,1)
    	gg2=substring(substring(_root.myColor,5,2),2,1)
    	bb1=substring(substring(_root.myColor,7,2),1,1)
    	bb2=substring(substring(_root.myColor,7,2),2,1)
    	// chiamata alla funzione di conversione
    	// passando il valore ed il nome
    	// rr= rr1*16^1+rr2*16^0 = rr1*16+rr2*1
    	_root.HexToDec(rr1,"rr1")
    	_root.HexToDec(rr2,"rr2")
    	_root.rr=Number(_root.rr1)*16+Number(_root.rr2);	_root.HexToDec(bb1,"gg1")
    	_root.HexToDec(bb2,"gg2")
    	_root.gg=Number(_root.gg1)*16+Number(_root.gg2);	_root.HexToDec(bb1,"bb1")
    	_root.HexToDec(bb2,"bb2")
    	_root.bb=Number(_root.bb1)*16+Number(_root.bb2);
    }
    // Funzione di conversione
    function HexToDec(x,y){
    	bit=x
    	nome=y
    	switch (bit) {
    	case "0":
    		_root[nome]="0"
    		break;	
    	case "1":
    		_root[nome]="1"
    		break;
    	case "2":
    		_root[nome]="2"
    		break;
    	case "1":
    		_root[nome]="1"
    		break;
    	case "3":
    		_root[nome]="3"
    		break;
    	case "4":
    		_root[nome]="4"
    		break;
    	case "5":
    		_root[nome]="5"
    		break;
    	case "6":
    		_root[nome]="6"
    		break;
    	case "7":
    		_root[nome]="7"
    		break;
    	case "8":
    		_root[nome]="8"
    		break;
    	case "9":
    		_root[nome]="9"
    		break;
    	case "A":
    		_root[nome]="10"
    		break;		
    	case "B":
    		_root[nome]="11"
    		break;
    	case "C":
    		_root[nome]="12"
    		break;
    	case "D":
    		_root[nome]="13"
    		break;
    	case "E":
    		_root[nome]="14"
    		break;
    	case "F":
    		_root[nome]="15"
    		break;
    default:
    		trace ("nessun numero Esadecimale compreso fra 0 e f")
    }
    }
    Il punto è che se cambio il valore di _root.myColor tramite un pulsante

    NON MI RICALCOLA RR, GG, BB

    Dov'è che sbaglio ??

    Infatti

    la funzione
    codice:
    myColor2 = new Color(_root.fondo);
    myColorTransform = new Object();
    
    _root.fondo.onEnterFrame = function(){
    	
    _root.myColorTransform = { ra: '100', rb: _root.rr, ga: '100', gb: _root.gg, ba: '100', bb: _root.bb, aa: '100', ab: '100'};
    _root.myColor2.setTransform(_root.myColorTransform);}
    
    }
    continua a leggere il valore iniziale "0x666666"


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.