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

Langage Java Discussion :

BuffuredImage et couleur d'un pixel


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Par défaut BuffuredImage et couleur d'un pixel
    Bonjour bonjour tout le monde ^^

    Je bloque sur un problème depuis déjà quelques temps, alors je me résout à invoquer l'aide des mes confrères développeurs

    Donc voila. A la base je développe une application en utilisant jogl (librairie OpenGL pour java). Mais mon problème ne se situe pas à ce niveau la.
    Mon but est de récupérer la ou les valeur(s) qui représente la couleur d'un pixel précis de ma BufferedImage, et d'utiliser ces valeurs pour créer un voxel dans mon espace 3D.
    Pour la création de ce voxel, ce n'est pas un problème, j'ai la méthode gl.glVertex3d(double, double, double). Après, pour définir sa couleur, il faut que j'invoque la méthode gl.glColor3ub(byte, byte, byte) (il y en a une aussi avec 3 int, 3 short ou 3 float). Seulement voila, cette méthode requière 3 arguments... Et la seule manière que j'ai trouvé de récupérer la couleur d'un pixel (x,y) d'une BufferedImage est en appelant mabufferedImage.getRGB(x, y) qui ne renvoi malheureusement qu'un int

    Ma question est donc là, comment faire pour avoir trois valeurs représentant la couleur d'un pixel à partir d'une BufferedImage ?

    J'espère que j'ai été assez clair (en tout cas j'ai fait de mon mieux ). N'hésitez pas à me poser des questions si besoin est ^^
    Et merci d'avance à vous tous

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Toutes ces infos peuvent tenir sur un int avec la manipulation de bits. Tu peux utiliser la classe Color pour récupérer les diverses valeurs, ou réécrire le code :

    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
        /**
         * Returns the red component in the range 0-255 in the default sRGB
         * space.
         * @return the red component.
         * @see #getRGB
         */
        public int getRed() {
            return (getRGB() >> 16) & 0xFF;
        }
     
        /**
         * Returns the green component in the range 0-255 in the default sRGB
         * space.
         * @return the green component.
         * @see #getRGB
         */
        public int getGreen() {
            return (getRGB() >> 8) & 0xFF;
        }
     
        /**
         * Returns the blue component in the range 0-255 in the default sRGB
         * space.
         * @return the blue component.
         * @see #getRGB
         */
        public int getBlue() {
            return (getRGB() >> 0) & 0xFF;
        }
     
        /**
         * Returns the alpha component in the range 0-255.
         * @return the alpha component.
         * @see #getRGB
         */
        public int getAlpha() {
            return (getRGB() >> 24) & 0xff;
        }

    a++

  3. #3
    Membre actif
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Par défaut
    Yeah merci
    Ça marche pas encore mais au moins ça vient pas de ça xD

    En tout cas merci pour la rapidité

    Problème résolu

    @+

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

Discussions similaires

  1. [VB.NET]Comment recupérer la couleur d'un pixel de l'Ecran ?
    Par cyrcroix dans le forum Windows Forms
    Réponses: 24
    Dernier message: 07/11/2007, 11h35
  2. Réponses: 1
    Dernier message: 26/03/2005, 13h31
  3. [TBitmap] Recuperer la couleur d un pixel
    Par DamessS dans le forum C++Builder
    Réponses: 2
    Dernier message: 14/12/2004, 09h47
  4. [VB6] Comment récupérer la couleur d'un pixel de l'écran?
    Par Taurëndil dans le forum VB 6 et antérieur
    Réponses: 14
    Dernier message: 26/03/2004, 09h02
  5. Obtenir la couleur d'un pixel
    Par GLDavid dans le forum OpenGL
    Réponses: 2
    Dernier message: 09/03/2004, 19h21

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