Decodificazione del valore di RGB


  Share  
|


Desiderate estrarre i componenti rossi, verdi e blu da un valore di RGB restituito da Color.getRGB().

Usi la destra del bitshift e bitwise E gli operatori.

Potete estrarre i componenti rossi, verdi e blu dal singolo valore di RGB restituito da Color.getRGB() che usando la destra del bitshift (> >) e bitwise E (&) gli operatori. Potete estrarre individualmente uno o più dei colori come segue:

//generi il my_color dell'oggetto di colore = nuovo 
Color(myMovieClip);
//ottenga il colore corrente di RGB rgb = 
my_color.getRGB();
//rgb contiene un valore di colore di RGB nella forma 
decimale, come 14501017 (colore rosa ottimistico),// che è 
immagazzinata internamente come relativo equivalente del hex, quale 
colore rosso 0xDD4499. = (rgb > > 16); verde = (rgb > > 8) & 
0xFF; azzurro = rgb & 0xFF;

Anche se visualizzato come numero decimale, ricordisi di che ogni colore è memorizzato internamente nella relativa forma esadecimale: 0xRRGGBB. Per esempio, il valore 14501017 (che di colore è colore rosa ottimistico) è memorizzato internamente come 0xDD4499. In questa disposizione, è facile da vedere che il componente rosso è DD nel hex (221 nel decimale), il componente verde è 44 nel hex (68 nel decimale) ed il componente blu è 99 nel hex (153 nel decimale).

La trasformazione preceding separa efficacemente un valore 24-bit nei relativi tre componenti 8-bit (gli otto bit di estrema sinistra rappresentano il colore rosso, gli otto bit centrali rappresentano il verde e gli otto bit di estrema destra rappresentano l'azzurro). L'operatore di destra del bitshift è usato per spostare gli otto bit di interesse alla posizione di estrema destra. Usando bitwise ED operatore con 0xFF mantiene gli otto bit di estrema destra soltanto, efficacemente mascherando fuori di tutte le punte indesiderabili a sinistra.

In pratica, è spesso più facile da usare Color.getTransform().in che i componenti rossi, verdi e blu sono restituiti come le proprietà separate di una trasformazione object.to determinano il colore della clip. Ancora, getTransform() inoltre restituisce il valore dell'alfa per un colore, che il getRGB() non

ciò è un articolo aggiunto da Elis Frugalo


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions