Ik heb een Java-programmaatje dat PPM-files inleest. Op zich niet zo lastig allemaal. Het plaatje wordt opgeslagen in drie int[][]-arrays, een array voor rood, een array voor groen en een array voor blauw. Het enige jammere is dat de tekenroutine zo ontzettend traag. Ik gebruik een plaatje van 320x240 pixels, en daar duurt een repaint() al rustig een paar seconden. M'n paint(Graphics g) ziet er (enigszins uitgekleed) zo uit.
Heeft iemand enig idee of ik zo'n routine ook op de een of andere manier kan versnellen
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| public void paint(Graphics g) { super.paint(g); Graphics2D g2 = (Graphics2D)g; if(!ppmLoaded) { // ... } else { for(int x = 0; x < width; x++) { for(int y = 0; y < height; y++) { //... g2.setColor(new Color(ppmImageRed[x][y], ppmImageGreen[x][y], ppmImageBlue[x][y])); g2.drawLine(x, y, x, y); } } } } |
Heeft iemand enig idee of ik zo'n routine ook op de een of andere manier kan versnellen