Ciao andbin, ti posto il codice.
In parte "forse" ho migliorato con questo codice(senza overraidare paintComponent):
Il codice: inserito in una classe invocata da un bottone:
Tuttavia ancora non riesco ancora:codice:int progresso=0; file = new File(fileName); //fileName è il path. img = new Immagine(file); //Immagine è una classe che si occupa di disegnare iconIMG.setImage(img.getImage()); //limite progresso? Da aggiustare penso in realtà, sbaglia di poco! double limiteProgresso = (endX-begX+k)*(endY-begY+k)/(k*k); int RED=180; int GREEN=100; int BLUE=100; try { for(double x=begX; x<=endX; x+=k){ for(double y=begY; y<=endY; y+=k){ //Risolve le espressioni da un altro package: X0 = ValuteExpression.solveExp(eX,"x",x,"y", y); Y0 = ValuteExpression.solveExp(eY,"x",x,"y", y); Z0 = ValuteExpression.solveExp(eZ,"x",x,"y", y); //progresso? Da aggiustare penso in realtà, sbaglia di poco! double progress = (int)(2+100.0*progresso/limiteProgresso); //Qui dovrei aggiungere in tempo più o meno "reale" il progress dell' immagine ad un'altra label. RED = (int)(Math.random()*255); GREEN = (int)(Math.random()*255); BLUE = (int)(Math.random()*255); //Metodo che setta e disegna il punto di Immagine img.setPointXYZ(X0,Y0,Z0,new Color(RED,GREEN,BLUE)); img.disegna(scala); //invoca il metodo disegna della classe Immagine. //Aggiorna l'etichetta lImg, definita/dichiarata in classe Pannello che estende JPanel. lImg.imageUpdate(img.getImage(),ALLBITS,0,0,500,500); } } } catch(Exception ex) { System.out.println("Errore nella gestione delle espressioni"); }
- a non ricaricare l'immagine tutte le volte quanto premo il bottone, vorrei si pulisse(pensavo a flush() ma non va...)
- a mostrare il progress in un etichetta in tempo più o meno reale.
- a mostrare l'update dell'immagine in tempo reale???

Rispondi quotando