Forums Développement Multimédia

Aller au contenu

Bit shifting

CODE Actionscript

3 réponses à ce sujet

#1 panicq

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 99 messages

Posté 10 July 2013 - 00:03 AM

Salut,

Pouvez vous m'expliquer le bit shifting svp ?

j'ai trouvé cette ligne de code dans un tuto je ne comprend pas le bit shifting sur la couleur:

var height:int = ((bitmapData.getPixel(col, row) >> 16));

Merci d'avance :)

#2 hubeert

  • Members
  • PipPipPipPipPipPipPipPip
  • 925 messages

Posté 10 July 2013 - 08:49 AM

coucou;
Le codage d'une couleur peut se faire sur 32 bit dont 24 servent uniquement a la couleur.
8 bit consacrés au rouge
8 au vert
8 au bleu
chaque pixel d'une composante peut avoir 256 niveau " d'intensité" de 0 a 255
les composante sont agencée comme suis

Rouge Vert Bleu mis bout a bout on obtient un "chiffre" en binaire qui exlique a l'ordi comment afficher la couleur..
donc le rouge est codé du bit 16 au bit 24
le vert de 8 a 15
le bleu de 0 a 7
le rouge intense sera ecrit ainsi en binaire.

rouge vert bleu
valeurRouge= 11111111 00000000 00000000
Il faut bien entendu pouvoir écrire les couleurs les effacer ou simplement les transformer.
pour cela sans rentrer trop dans les détails il ya les opérateurs sur le bit ( OSB); ceux ci permettent certaine opération sur le bit; il faut voir chaque bit comme un interrupteur ouvert/fermé

donc la pour la couleur rouge intense les 8 bit du rouge tous ouvert (valeur max) et les deux autres serie vert et bleu tous fermé valeur nulle par exemple.

Ici pour manipuler la valeur de la couleur du pixel obtenu par getPixel(x,y) l'auteur du code se sert de l' OSB de décalage a droite signé soit : >> qui s'utilise ainsi opérande >> n ; les bit ici seront "décalés" vers la droite de n position. voici ce qui va se passer avec notre couleur rouge intense
111111110000000000000000 >> 16
egale = 00000000 00000000 11111111
notre rouge intense est devenu un bleu intense?

Ici le gars applique un filtre bleu pour faire simple..

#3 panicq

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 99 messages

Posté 10 July 2013 - 16:20 PM

Ok merci :) Très bonne explication !

#4 hubeert

  • Members
  • PipPipPipPipPipPipPipPip
  • 925 messages

Posté 14 July 2013 - 05:19 AM

coucou;
Un petit visuel pour expliquer le décalage a droite.

- Afficher le SWF -
Fichier joint  couleur-decalage.swf   2.09 Ko   10 téléchargement(s)



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP