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

Graphisme Java Discussion :

[pixelgrabber] modifier une image


Sujet :

Graphisme Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 169
    Par défaut [pixelgrabber] modifier une image
    Bonjour à tous.
    Je souhaite modifier des images dans mon programme Java, en modifiant la matrice de l'image. J'utilise donc la classe Pixelgrabber, comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    //récupère l'image sous forme de tableau d'entier
                int[] tab = new int[width * height];
                PixelGrabber pg = new PixelGrabber(image, 0, 0, width, height, tab, 0, width);
                try {
                    pg.grabPixels();
                }catch(InterruptedException e){System.err.println("interrupted waiting for pixels!");}
    pour récupérer les composantes rougze, vert, bleu de chaque pixel, pas de problème je fais comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    int pix=tab[i*width+j];
    int red   = (pix >> 16) & 0xff;
    int green = (pix >>  8) & 0xff;
    int blue  = (pix      ) & 0xff;
    Mais mon problème, c'est pour créer une nouvelle couleur, par exemple le rouge qui serait identifié par [255 , 0 , 0], et ranger ces trois valeurs dans un seul entier. Est-il possible ?

    Merci beaucoup

    Laurent

  2. #2
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    Si tu utilises une BufferedImage, il te suffit d'utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    public void setRGB(int x, int y, int rgb)
    avec x,y la position du pixel [EDIT cause oubli : ] et la valeur rgb tirée de la faq /

    /** Construction d'un pixel : */
    int rgb = (alpha<<24)+(rouge<<16)+(vert<<8)+bleu;

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 169
    Par défaut
    cool, merci, je n'avais pas trouvé. Je vais essayer, si j'y arrive je reviens dire que c'est résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FLASH MX] Modifier une image
    Par sozie9372 dans le forum Flash
    Réponses: 4
    Dernier message: 09/12/2005, 01h24
  2. Modifier une image...
    Par laurent_ifips dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 22/11/2005, 21h40
  3. MFC + Afficher et modifier une image
    Par os dans le forum MFC
    Réponses: 4
    Dernier message: 07/03/2005, 19h20
  4. modifier une image
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 22
    Dernier message: 11/02/2005, 10h17
  5. Modifier une image par pixels
    Par mateo.14 dans le forum MFC
    Réponses: 10
    Dernier message: 21/01/2005, 15h09

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