gilles a écrit:
le passage du canvas au jpanel semble accelerer le rendu, j'ai l'impression que java drop de lui même quelques images si on essaye d'en afficher trop sans double buffer.
Oui, le canvas.repaint() ne redessine pas immédiatement.. il bufferise. Perso quand j'ai bricolé des portages java des vieux progs basic/c que j'avais dans les cartons (
ici, ou
là, ou
encore là(*)), j'avais constaté qu'avec
Code:
canvas = new Canvas() {
BufferedImage img = ...;
public void paint(java.awt.Graphics g) {
g.drawImage(img, 0, 0, getWidth(), getHeight(), this);
}
@Override
public void update(Graphics g) {
paint(g);
}
};
il vaut mieux appeler canvas.repaint() une fois pour l'ensemble d'une image plutot que plusieurs fois canvas.repaint(x,y,w,h) pour l'ensemble des points (cf DEM.jar). La gestion de fusion des demandes de repaint() consécutives m'a semblé couteuse.
___
(*) que j'espère porter sur thomson avec des minifloats
Citation:
ok pour le ~FFFF ca marche aussi, ca va gagner un peu en vitesse.
Avec (short)value, ca irait encore un peu plus vite (les petits ruisseaux font des grandes rivières).