Hi!
I’m using the following code to render a left to right scroll transition between two images over a JPanel:
public void render(JPanel panel, Image imageFrom, Image imageTo) {
Image buffer = gc.createCompatibleVolatileImage(panel.getWidth(), panel.getHeight());
Graphics g = buffer.getGraphics();
Graphics g2 = panel.getGraphics();
for (int x=0; x<=panel.getWidth(); x+=10) {
g.drawImage(imageFrom, x, 0, panel);
g.drawImage(imageTo, x-panel.getWidth(), 0, panel);
g2.drawImage(buffer, 0, 0, panel);
try {
Thread.sleep(20);
}
catch(InterruptedException ex){}
}
g.dispose();
g2.dispose();
buffer.flush();
}
As you can see I render out of the bounds of the screen many times during the transition. I suppose I can improve the performance not drawing the offscreen parts. How can I do it ? Is easy ? Can anyone help me, please ?
Thanks in advance