Negation d'une image bitmap (flash 8 beta)

Description

Voila un petit exemple suite à la source déposée concernant flash player 8 et sa gestion des pixels.

Rappellons que le player est dispo gratuitement ici : http://www.macromedia.com/software/flashplayer/public_beta/

Seules les anims en swf luent sous internet explorer marcheront avec la version 8.
(pas si vous lancer le swf directement)

Cette source est simple et explique comment utiliser les principaux atouts de la classe bitmap.

Source / Exemple :


pas besoin de source, c'est tout simple :

créer un clip avec une image dedans,
placer le sur la scene principale,
nommer le photo (nom du clip).

puis insérer ce code dans l'image 1 :

stop();
//on cré un nouvel objet bitmap de taille 320*240
//(en ce qui concerne le "true" j'ai pas encore trouver pq il est la.
bmp_in = new flash.display.BitmapData(320, 240, true);
//draw est une methode qui ecrit les pixels qu'il voit sur photo dans bmp_in
bmp_in.draw(photo);
//ma variable d'increment global pour la hauteur de l'image.
var y = 0;
//la fonction qui renvoie le negatif des pixels.
function negativ() {
	//pour chaque ligne...
	for (var x = 0; x<=320; x++) {
		//... on chope la couleur du pixel sur l'image...
		c = bmp_in.getPixel(x, y);
		//... on calcul sa négation et on la renvoie dans l'image.
		bmp_in.setPixel(x, y, rvb2rgb(0xFFFFFF-c));
	}
	//on rafraichit les pixels, à cet appel, tout les pixels changé dans l'objet bmp_in s'affiche.
	_root.photo.attachBitmap(bmp_in, 1);
	//on incremente la variable global
	y++;
	//si la hauteur en cours dépasse la hauteur de l'image...
	if (y>240) {
		//... on arrete le timer.
		clearInterval(timer);
	}
}
//petite fonction qui convertie une valeur rvb : 0xFF0000 pour du rouge
//en une valeur pour setpixel. (pq set pixel est comme ça? j'en sais rien...
function rvb2rgb(rvb) {
	//petit calcul bidon...
	return (0xFFFFFF-rvb)*-1;
}
//on trace les lignes de pixels de 0 à 240 à interval régulier.
var timer = setInterval(negativ, 1);

Conclusion :


telecharger le, puis bouton droit de la souris sur le swf -> ouvrir avec -> internet explorer (ou votre navigateur préféré)
ou lancer le .html (tout ça une fois le player 8 telechargé et installé evidement).

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.