Slection avec la souris d'une zone dans l'image avec java

Signaler
Messages postés
6
Date d'inscription
lundi 16 mai 2005
Statut
Membre
Dernière intervention
29 septembre 2011
-
Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
-
je besoin dans mon pfe d'implémenter implimenter une methode avec java qui me permet de selectionner une zone d'une image et afficher la matrice de pixel correspondante à cette zone svp aidez moi merci!

3 réponses

Messages postés
5365
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
12 août 2021
111
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8" />
<title>
</title>
<meta name="GENERATOR" content="OpenOffice.org 2.4 (Linux)" />
<style type="text/css">
<!--
@page { size: 21cm 29.7cm; margin: 2cm }
P { margin-bottom: 0.21cm }
-->
</style>
Salut,

utilise les listeners
MouseLineter et MouseMotionListener sur l'objet contenant l'image et recup les pixels associés à la sélection...











------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO

Bonjour

Utilise un PixelGrabber pour récupérer les pixels une fois que tu auras récupéré les renseignements qu'il te faut concernant l'endroit où tu cliques comme Twinuts te l'a indiqué.

Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
37
Salut:

Tu peux procéder ainsi:

public static int[] getData(Image image, Rectangle rect) {
        int[] pixels = new int[rect.width * rect.height];
        PixelGrabber pg = new PixelGrabber(image, rect.x, rect.y,
                            rect.width, rect.height, pixels, 0, rect.width);
        try {
            pg.grabPixels();
        } catch (InterruptedException e) {
            e.printStackTrace();
            return null;
        }
        if ((pg.getStatus() & ImageObserver.ABORT) != 0) {
            System.err.println("Opération interrompue !!!");
            return null;
        }
        
        return pixels;
}