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

2D Java Discussion :

[Debutant] Remplir une forme avec une image récupérée.


Sujet :

2D Java

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 16
    Points
    16
    Par défaut [Debutant] Remplir une forme avec une image récupérée.
    Bonjour, je voudrai remplir une forme ( un polygone en l'occurence) avec une image jpeg. J'arrive très bien a dessiner le polygone sans l'image et à récupérer l'image. En revanche je n'ai pas très bien compris comment remplir le polygone avec l'image.

    Il me semble qu'il faut passer par la méthode setPaint de Graphics2D mais il ne prends en paramètre que des "BufferedImage" et non des "Image". Or je ne sais pas comment convertir un Image en BufferedImage. J'ai essayé en castant l'Image mais ça génère des exceptions ...

    Je vous montre le morceau de code qui m'embête :

    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
     
    Image image = toolkit.getImage(new String("./image.jpg")); // ça, ça marche
    // vu que j'arrive a afficher l'image toute seule
     
    BufferedImage bi = new BufferedImage(480,320,BufferedImage.TYPE_INT_RGB ); // Bon là 
    // je sais que ça va pas mais je sais pas comment construire le 
    // bufferedImage à partir de l'image...
     
     
    // Ensuite, bhaaa, ça va tout seul...
    Shape imageRect = new Rectangle2D.Double(0.0, 0.0, bi.getWidth(), bi.getHeight());
    TexturePaint imagePaint1 = new TexturePaint(bi, imageRect.getBounds2D()); 
     
    g.setPaint(imagePaint1);
    g.fillPolygon(tabx,taby,6);
    Voilà bha si quelqu'un peut m'aider, c'est pas de refus... Et aussi si quelqu'un peut m'expliquer ce qu'est un "BufferedImage" exactement ?!

  2. #2
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    Bonjour, essaie ceci au lieu de passer par le Toolkit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BufferedImage image = ImageIO.read(new File("./image.jpg"));

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 16
    Points
    16
    Par défaut
    Yes !!! ça marche à merveilles !! Merci à toi ôôô grand xavlours


  4. #4
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  3. Réponses: 6
    Dernier message: 10/06/2010, 15h31
  4. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  5. Réponses: 4
    Dernier message: 01/09/2007, 12h22

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