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 :

Effacer une partie d'image


Sujet :

2D Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Décembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 101
    Par défaut Effacer une partie d'image
    Bonjour,

    Je cherche à dessiner une image dans une BufferedImage. Ca me simplifierais énormément la vie si je créé deux images que je combinerais ensuite. J'ai trouve facilement les méthodes pour combiner deux images, mais je voudrait effacer un bout de l'une avant de les fusionner.

    Et ça je ne trouve vraiment pas comment faire. Y a t'il une méthode ou est ce que je vais devoir construire mon image avec des Shape ?

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Effacer les pixels ? Tu veux dire mettre du noir (0,0,0,0) ?

    ou tu parles d'un cropping (decoupe pour garder une zone de l'image d'origine).
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Décembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 101
    Par défaut
    C'est vrai que je n'ai pas était clair. Ce que je voudrais c'est pouvoir les mettre à transparent. Mon image finale est composée d'une zone carré et d'un anneau. Je veux que l'anneau cache le fait que le carré est carré. Qu'il soit comme un cadre en fait.

    Pour le moment j'utilise deux cercle concentriques pour faire l'anneau et je dessine dans le plus petit des cercles, mais je dois colorier une partie de cet intérieur et c'est là que ça se complique.

    Je met en pièce jointe le résultat que j'aimerais obtenir.
    Images attachées Images attachées  

  4. #4
    Membre averti
    Femme Profil pro
    Analyste Concepteur SI
    Inscrit en
    Septembre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Concepteur SI
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 37
    Par défaut
    Citation Envoyé par wax78 Voir le message
    Effacer les pixels ? Tu veux dire mettre du noir (0,0,0,0) ?

    ou tu parles d'un cropping (decoupe pour garder une zone de l'image d'origine).
    Bonjour,

    Cela m'intérresse de savoir comment effacer les pixels.
    Si quelqu'un à une solution ?

    Merci

  5. #5
    Membre averti
    Femme Profil pro
    Analyste Concepteur SI
    Inscrit en
    Septembre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Concepteur SI
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 37
    Par défaut
    Alors j'ai trouvé une solution j'utilise un setRGB pour changer la couleur de mes pixels un à un cependant cela n'a pas l'air d'affecter les pixels. En effet cela ne noircit aucune zone de mon image...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int x = 20;
    int y = 650;
    BufferedImage Img = new BufferedImage(image.getWidth(null), image.getHeight(null), BufferedImage.TYPE_INT_ARGB);
     
    while(x < 200) 		//width
    {
    	 while(y > 100) 	//height
    	 {
    	 	Img.setRGB(x, y, Color.BLACK.getRGB());
    		y--;
    	 }
        x++;
    }

  6. #6
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Moi je dirais que au mieux ca te noirci une colonne de 1 pixel de ton image

    T'as oublié de resetter ton Y a chaque boucle sur X ... donc forcement ca va ne noircir qu'une colonne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    while(x < 200) 		//width
    {
                y=600; // Sinon au prochain X y vaudra 100 et donc il ne rentrera plus dans cette boucle.
    	 while(y > 100) 	//height
    	 {
    	 	Img.setRGB(x, y, Color.BLACK.getRGB());
    		y--;
    	 }
        x++;
    }
    Mais bon entre nous, si tu dois "noircir" un carré dans ton image ne le fait pas pixel/pixel, prends un FillRect en recuperant le Graphics de ton image ca sera bcp bcp plus simple et peut etre meme plus rapide.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre averti
    Femme Profil pro
    Analyste Concepteur SI
    Inscrit en
    Septembre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Concepteur SI
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 37
    Par défaut
    Citation Envoyé par wax78 Voir le message
    Moi je dirais que au mieux ca te noirci une colonne de 1 pixel de ton image

    T'as oublié de resetter ton Y a chaque boucle sur X ... donc forcement ca va ne noircir qu'une colonne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    while(x < 200) 		//width
    {
                y=600; // Sinon au prochain X y vaudra 100 et donc il ne rentrera plus dans cette boucle.
    	 while(y > 100) 	//height
    	 {
    	 	Img.setRGB(x, y, Color.BLACK.getRGB());
    		y--;
    	 }
        x++;
    }
    Mais bon entre nous, si tu dois "noircir" un carré dans ton image ne le fait pas pixel/pixel, prends un FillRect en recuperant le Graphics de ton image ca sera bcp bcp plus simple et peut etre meme plus rapide.
    Oui effectivement je m'en suis rendu compte plus tard. Merci

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 56
    Par défaut
    Bonjour,

    Citation Envoyé par barmic Voir le message
    Y a t'il une méthode ou est ce que je vais devoir construire mon image avec des Shape ?
    Perso, je construirai avec des shapes et ce serait surement plus rapide.

    Tu mets tes shapes dans un arraylist, et tu les ressort de la couleur voulu, soit en draw, soit en fill ou les deux.

    Cdt,
    DMF

Discussions similaires

  1. Fonction qui séléctionne une partie d'image
    Par meera dans le forum Visual C++
    Réponses: 10
    Dernier message: 07/11/2006, 17h25
  2. Découper une partie d'image d'une image
    Par Monsieur Charron dans le forum Langage
    Réponses: 1
    Dernier message: 09/09/2006, 16h49
  3. comment copier une partie d'image
    Par mouchie82 dans le forum C++Builder
    Réponses: 1
    Dernier message: 24/06/2006, 14h43
  4. extraire une partie d'image d'une image source
    Par Zen_Fou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/01/2006, 11h20

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