Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2560 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Graphics => dessin sur un JLayeredFrame qui s'efface automatiquement

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Graphics => dessin sur un JLayeredFrame qui s'efface automatiquement

n°1119600
c0wb0y
:d
Posté le 14-06-2005 à 15:06:24  profilanswer
 

Voilà, j'ai réalisé une fonction qui dessine des trajectoires sur un JLayeredPane (en fait j'ai essayé aussi de dessiner directement sur un JLabel, c'est pareil).
 
La fonction de dessin :  

Code :
  1. /**Affiche dans le calque, les trajectoires des copépodes pour les images 0 à rang
  2.      * @param rang - la limite à utiliser pour les trajectoires
  3.      */
  4.     private void showTrajectoire(int rang){ 
  5.         DebugGraphics g = new DebugGraphics(layer.getGraphics());
  6.         int couleur[]= copepodtracker.kernel.ListeCouleur.couleur;
  7. int c=0;
  8.        
  9.         for(Trajectoire trajectoire : listeTrajectoire){
  10.             if(rang>= trajectoire.getFrame()){     
  11.                 ArrayList<Coordonnee> traj = trajectoire.getTrajectoire();
  12.                 int id = trajectoire.getId();
  13.                 g.setColor(new Color(couleur[id % couleur.length]));
  14.                 for(Coordonnee coord : traj){
  15.                     int cx = (int)coord.getX();
  16.                     int cy = (int)coord.getY();
  17.                     g.drawLine(cx, cy, cx, cy);
  18.                     c++;
  19.                     if(c>rang){                       
  20.                         c=0;
  21.                         break;
  22.                     }
  23.                 }
  24.             }
  25.         }       
  26.     }


 
Là ou elle est appelée :  

Code :
  1. private void jSlider1StateChanged(javax.swing.event.ChangeEvent evt) {                                     
  2.         //selectionner la frame par le slider
  3.         i=jSlider1.getValue();       
  4.         jLabel1.setText("Frame : "+i);
  5.         try{
  6.             jLabel2.setIcon(new javax.swing.ImageIcon(listeImageFile.get(i)));           
  7.             showTrajectoire(i);
  8.         }catch(Exception e){       
  9.         }
  10.     }


 
Ca fonctionne, mes trajectoires s'affichent .. pendant le changement d'était de mon slider. Mais après, ça disparait :-/
Qu'est ce que je peux faire pour que ça reste apparant ?
Pour contourner le problème, j'ai fait un bouton qui permet de réafficher les trajectoires, mais c'est pas pratique.


Message édité par c0wb0y le 16-06-2005 à 14:30:16
mood
Publicité
Posté le 14-06-2005 à 15:06:24  profilanswer
 

n°1121953
c0wb0y
:d
Posté le 16-06-2005 à 14:30:31  profilanswer
 

:bounce:

n°1135329
Chidori
Posté le 30-06-2005 à 00:55:59  profilanswer
 

Slt, je pense que tu devrais essayer de sauvegarder les coordonnées de tes trajectoires dans un Vector(sorte de tableau dont la taille peut varier) et après d'afficher les valeurs contenues dans ce Vector.

n°1137057
c0wb0y
:d
Posté le 01-07-2005 à 12:02:36  profilanswer
 

Hum, j'utilise déjà une ArrayList qui est plus ou moins la même chose que le Vector (les java guru diront que ArrayList caybieng et Vector caymal). Sinon, j'ai bidouiller un peu pour que l'affichage se refait quand on sort de la zone du JSlider, c'set pas le top niveau ergonomie mais c'est utilisable. Le projet est finit de toute façon maintenant ^^
 
Merci quand même :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Graphics => dessin sur un JLayeredFrame qui s'efface automatiquement

 

Sujets relatifs
[batch] modifier automatiquement l'extension de fichiers qcqsupprimer automatiquement des entrées dans un table sql
dessindetecter automatiquement
Combobox selectionné automatiquement la 1ere lignelancer automatiquement un batch
renommer automatiquement une case dans un fichier Excel3d computer graphics
Powerpoint comment faire pour lancer automatiquement un diaporama? URGModifier l'heure automatiquement sous windows
Plus de sujets relatifs à : Graphics => dessin sur un JLayeredFrame qui s'efface automatiquement


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)