IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

Petite colle - transformation de couleurs d'un movieclip


Sujet :

ActionScript 3

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 202
    Par défaut Petite colle - transformation de couleurs d'un movieclip
    Bonjour,

    J'ai une petite colle à vous soumettre. Un truc qui parait simple mais qui prend des proportions énormes:

    J'ai un MovieClip dans ma bibliothèque et je voudrais remplacer toutes tous les pixels d'UNE couleur par UNE autre couleur.

    Je précise:

    - Que j'ai déjà cherché du coté de bitmapdata et que ça donne rien car mon MovieClip contient des objets animés (le bitmapdata aurait pu faire l'affaire pour quelque chose de statique)

    - Je me suis déjà tourné vers les filtres et autre colorTransform qui permettent de faire des trucs hyper compliqués mais pas ce que je veux.

    Alors voila, si quelqu'un a à une solution, je suis preneur !

    D'avance merci pour vos réponses

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Salut,

    Y a bien une solution que j'ai testé...Elle consiste à dupliquer le clip créé en un bitmapData. A partir de là tu peux modifier les pixels. J'ai créé un clip toto, avec dedans une forme quelconque.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    // on créé les données bitmap aux dimensions du clip
    var data:BitmapData = new BitmapData (toto.width, toto.height, true);
     
    // On positionne le clip
    var image:Bitmap = new Bitmap (data);
    image.x += 310;
    image.y += toto.y;
    addChild( image);
     
    // Permet d'éviter les débordements
    var transfo:Matrix = toto.transform.matrix;
    transfo.tx = 0;
    transfo.ty = 0;
    var debordement:Rectangle = toto.getBounds(toto);
    transfo.translate(-debordement.x * toto.scaleX, -debordement.y * toto.scaleY);
     
    // affiche sous forme bitmap les données vecto
    data.draw( toto, transfo );
     
    var couleur:uint;
    /*Dans la boucle je teste chaque pixel avec getPixel, 
    bon pour gérer la transparence j'ai vérifié s'il y avait 
    la couleur blanche, y a surement une méthode qui le 
    fait tout seul ! Et après avec setPixel on remplace par 
    une couleur, si tu veux une couleur aléatoire pour 
    chaque couleur tu peux créer une variable aléatoire !*/
     
    for(var i:int=0; i<data.width; i++){
        for(var j:int=0; j<data.height; j++){
            if(data.getPixel(i,j) == 0xffffff){
                data.setPixel32(i,j, 0xffffff);    
                trace("blanc");
            }
            else        
                data.setPixel(i,j, 0x99bb22);    
        }
    }
    A la fin tu obtiens une image dupliquée de couleur différente.

    C'est une méthode hein, si ton animation est animée par contre, c'est aussi faisable, mais c'est plus long à détailler..!

    Bye

Discussions similaires

  1. Transformation des couleurs d'une image
    Par Seth77 dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 11/12/2009, 11h53
  2. Transformation image couleur en noir et blanc
    Par AuraHxC dans le forum Qt
    Réponses: 13
    Dernier message: 20/10/2009, 22h33
  3. [GD] Transformer une couleur en une autre
    Par Samuel2202 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 20/07/2007, 10h06
  4. une petite colle
    Par ctenot dans le forum Oracle
    Réponses: 6
    Dernier message: 10/01/2007, 14h11
  5. ne s'affiche pas sur le net..petite colle
    Par joe206 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 34
    Dernier message: 29/05/2006, 20h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo