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

AWT/Swing Java Discussion :

generer une image rapidement ?


Sujet :

AWT/Swing Java

  1. #1
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Points : 909
    Points
    909
    Par défaut generer une image rapidement ?
    Bonjour,

    dans un programme je génère une image (pour l'instant une bufferedImage) à partir d'un tableau de donnée (des doubles) et en utilisant un BiSlider qui me permet de connaitre la couleurs de chaque pixel de mon image en fonction de la valeur..

    Probleme refaire mon image (300*600) me prend 2 secondes ... or l'utilisateur peut avoir envie de modifier les couleurs avec le bislider et d'avoir le plus possible une maj "en temps réel"

    Est ce possible ? si non ,y a t'il un moyen d'optimiser?

    je penseais a l'utilisation d'un timer qui au lieu de demander une maj a chause fois que l'utilisateur bouge le slider le demenderais que toute les 3 seconde ... mais j'avoue que je n'arrive pas a comprendre comment marche le timer ....

    Si vous pouvez m'aider sur les images ou sur les timers ^^ merci !

    ah un peu de code
    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
    16
     
    	private void colorImage(AMResults[][] imData)
    	{
    		int y = 0;
    		for (int i = 0 ; i < imData.length; i++)
    		{
    			y = 0;
    			for(int j = imData[0].length-1; j > 0; j--)
    			{
    				double val = -Math.log10(imData[i][j].getPvalue());
    				_image.setRGB(i, y, _color.getColorFor(val).getRGB());
     
    				y++;
    			}
    		}
    	}
    Informaticienne le jour, créatrice de bijoux la nuit (https://www.facebook.com/La-Fée-Chro...07539656306271) et maman à plein temps !

  2. #2
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Points : 909
    Points
    909
    Par défaut
    Bon c'est pas la generation qui est longue mais l'appel a la fonction pour avoir la couleur .... j'essaye de contourner le problème (ca à l'air deja plus rapide ^^)

    mais je vais peut etre quand meme avoir besoin du timer...
    Informaticienne le jour, créatrice de bijoux la nuit (https://www.facebook.com/La-Fée-Chro...07539656306271) et maman à plein temps !

  3. #3
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 62
    Points : 75
    Points
    75
    Par défaut
    Peut être que la classe MemoryImageSource pourrais te donner une piste il y à un petit exemple dans la documentation java.Plus généralement l'utilisation de classe implémentant les interfaces de ImageConsumer et ImageProducter permette de charger l'image peu à peu et de ne pas attendre le chargement totale de l'image.

    Bonne chance.

  4. #4
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Egalement plutot que d'utiliser plein d'appels a setRGB() pour mettre chaque pixel a la bonne couleur, remplie donc un tableau d'entier dans ta boucle et a la fin utilise l'autre variante de la methode (celle qui prend un tableau en parametre).
    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

  5. #5
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Points : 909
    Points
    909
    Par défaut
    Merci ^^ .. bon pour l'instant ca marche relativement rapidement mais il faudrais que je teste avec une image plus grande pour etre sure ^^
    Informaticienne le jour, créatrice de bijoux la nuit (https://www.facebook.com/La-Fée-Chro...07539656306271) et maman à plein temps !

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

Discussions similaires

  1. generer la matrice d'une image
    Par id_rima dans le forum Débuter
    Réponses: 8
    Dernier message: 08/06/2010, 10h29
  2. Generer une image à partir d'un fichier HTML
    Par maloups dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 16/03/2010, 01h00
  3. Generer une image bitmap 24 bits avec PIL
    Par scheme dans le forum Calcul scientifique
    Réponses: 2
    Dernier message: 07/09/2009, 10h16
  4. Recuperer une image generer par un serveur
    Par dayoflayo dans le forum Langage
    Réponses: 1
    Dernier message: 23/02/2008, 02h23
  5. generer une image bitmap a partir d'une scene OGL
    Par FreshLog dans le forum OpenGL
    Réponses: 4
    Dernier message: 01/07/2003, 11h29

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