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 :

je cherche fonction de remplissage (pot de peinture)


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Par défaut je cherche fonction de remplissage (pot de peinture)
    bonjour;
    Je cherche la fonction de remplissage "pot de peinture" comme dans photoshop ou gimp;
    Je vais expliquer un peux mon problème
    On suppose que nous avons une image binaire ; où il y’a un contour fermé qui entour un objet donnée ; mais la forme de cette objet est aléatoire ; je vais utiliser le paint de windows pour vous donnez un exemple

    puis en click sur le pot de peinture de la barre d'outille puis en click sur une point de notre objet; pour remplir l'objet par un couleur donné; et voici le resultat obtenu

    Merci

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Première question, sur quel genre d'objet tu compte faire ça? Deuxième question, vu ton dessin, pourquoi ne pas plutot calculer l'intersection entre tes deux formes, ce serait plus performant.

  3. #3
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 904
    Billets dans le blog
    54
    Par défaut
    en effet il n' y a pas assez d'infos dans ton descriptif.
    • Si c'est du bitmap et que tu n'as plus de réferences sur les formes géométriques, il va falloir rechecher du coté des algorigthmes d'innondation (en même temps ils ne sont pas très compliqué à programmer).
    • Si c'est des Shape, la classe Area permet de faire des opération arithmétiques sur des formes.
    • Dans une certaines mesure on peut aussi faire ça avec des Composite. Mais comme on a aucune idée comment tu fais ton dessin, ça peut être compliqué à mettre en place.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Comme dit au dessus (faut lire)
    Citation Envoyé par bouye Voir le message
    Si c'est du bitmap et que tu n'as plus de réferences sur les formes géométriques, il va falloir rechecher du coté des algorigthmes d'innondation (en même temps ils ne sont pas très compliqué à programmer).

  5. #5
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Citation Envoyé par Faudel24000 Voir le message
    bonjour;
    Je cherche la fonction de remplissage "pot de peinture" comme dans photoshop ou gimp;

    Merci
    comme a été indiqué ,tu peut utiliser la classe Area
    un exemple : on suppose une zone A et zone B dont leur intersection différent de vide comme indiqué dans la figure , alors suite a un clique souris ,tu dois savoir au quelle zone appartient le point sur laquel tu as cliqué (avec la méthode contains() ). par la suite ,si ce point appartient a deux zones , tu doit alors colorer la zone d'intersection qui sera zoneA.intersect(zoneB)

  6. #6
    Membre habitué
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Par défaut mon aidé
    J’ai essayé de trouvé une solution ; et voici la méthode que je propose
    1- On initialise le Pixel sélectionné qui est le pixel choisi par click sur l’objet
    2- on colore le Pixel sélectionné.
    3- Et on met tous les 8 voisins de ce pixel dans une file d’attente.
    4- Puis en retire un pixel de la file d’attente et en lui test
    a. s’il n’est pas un contour et s’il n’été pas déjà coloré dans ce cas en recommence de l’étape 2.
    b. Sinon en fais rien et aller vers l’étape 4 jusqu'à ce que la file soit vide

  7. #7
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Citation Envoyé par Faudel24000 Voir le message
    s’il n’est pas un contour
    tu va faire la détection des contours ?


    Citation Envoyé par Faudel24000 Voir le message
    s’il n’été pas déjà coloré
    s'il est blanc sur un fond rouge par exemple alors tu le prend comme coloré ou non ?

    tu va utiliser quoi pour connaitre la couleur du pixel ? la méthode getRGB() de la classe Raster ?

  8. #8
    Membre habitué
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Par défaut
    [QUOTE=slim_java;4555444]tu va faire la détection des contours ?

    la phase de détection des contours est déja fait avant ça.

    on supose qu'on dans l'image que les contours de l'objet; et on va remplir l'objet par un autre couleur

  9. #9
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    a tu pris en compte le temp de calcul ?
    les invocations de la méthode repaint() et le fait de tous dessiner et de tous commencer de zéro

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/06/2006, 15h00
  2. [HTML] cherche fonction css -> inline style
    Par the_bmo dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 24/02/2006, 10h05
  3. Cherche fonction de traitement de chaine de caractere
    Par DeezerD dans le forum Langage
    Réponses: 1
    Dernier message: 10/09/2005, 14h41
  4. Réponses: 10
    Dernier message: 17/12/2003, 13h51
  5. Cherche Fonction du style replace...
    Par sdchamplas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 31/03/2003, 13h54

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