Filtre couleur dans une application jdev

cs_marmouzine Messages postés 3 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 5 juin 2008 - 5 juin 2008 à 13:59
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 - 5 juin 2008 à 17:50
Bonjour, je souhaite réaliser une application qui utilise des filtres de couleur dans jdev.
étant encore débutant, j'ai un peu de mal à bien comprendre le code qu'il faut employé dans ce cas là.
on m'a montré un exemple pour une applet, que j'ai voulu réutilisé dans mon cas, mais la fonction "getCodeBase()" ne fonctionne pas

existe-t-il une fonction équivalente pour les applications ?

extrait du code pour l'applet :

import java.awt.*;
import java.awt.image.*;

public class Demo extends java.applet.Applet {
Image img;
Image img1,img2;

public void init() {
img= getImage(getCodeBase(),"duke.gif");

CropImageFilter cpf=new CropImageFilter (1,1,70,40);
img1= createImage(new FilteredImageSource(img.getSource(),cpf));
img2= createImage(new FilteredImageSource(
img.getSource(),new RedBlueSwapFilter()));

}
// un filtre qui echange Rouge et Bleu
class RedBlueSwapFilter extends RGBImageFilter {
public RedBlueSwapFilter() {
canFilterIndexColorModel = true;
}

public int filterRGB(int x, int y, int rgb) {
return ((rgb & 0xff00ff00)
| ((rgb & 0xff0000) >> 16)
| ((rgb & 0xff) << 16));
}
}

}

6 réponses

nosferaltu0 Messages postés 36 Date d'inscription mardi 6 mai 2008 Statut Membre Dernière intervention 6 juin 2008
5 juin 2008 à 14:49
Utilise un JApplet plutôt.
0
cs_marmouzine Messages postés 3 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 5 juin 2008
5 juin 2008 à 15:11
ça ne résoud pas mon problème.. je ne veux pas faire dapplet mais une application
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
5 juin 2008 à 15:41
public class Demo extends JFrame {
Image img;
Image img1,img2;

public Demo() {
img= Toolkit.getDefaultToolkit().createImage("duke.gif");// ou 'chemin/duke.gif' (si tu mets juste le nom alors elle devra se trouver à la racine du projet)

CropImageFilter cpf=new CropImageFilter (1,1,70,40);
img1= createImage(new FilteredImageSource(img.getSource(),cpf));
img2= createImage(new FilteredImageSource(
img.getSource(),new RedBlueSwapFilter()));

}

public static void main(String [] args) {
new Demo();
}

// un filtre qui echange Rouge et Bleu
class RedBlueSwapFilter extends RGBImageFilter {
public RedBlueSwapFilter() {
canFilterIndexColorModel = true;
}

public int filterRGB(int x, int y, int rgb) {
return ((rgb & 0xff00ff00)
| ((rgb & 0xff0000) >> 16)
| ((rgb & 0xff) << 16));
}
}

}











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

OoWORAoO
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
5 juin 2008 à 15:43
le extends JFrame n'est pas obligatoire si tu ne veux rien afficher à l'écran, par contre si tu veux afficher un truc il te faudra en plus du extends JFrame (ou autre type de fenêtre) la configurer.

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

OoWORAoO
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_marmouzine Messages postés 3 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 5 juin 2008
5 juin 2008 à 16:37
en fait, j'ai créé un panneau qui extends JPanel.

ton code semble fonctionner, mais maintenant l'image ne s'affiche plus alors que je n'ai rien changé à la méthode pour afficher les images sur le panneau...
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
5 juin 2008 à 17:50
Salut,

donne tout le code, dis ce que tu veux faire et ça ira beacoup plus vite.

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

OoWORAoO
0
Rejoignez-nous