Ho creato un metodo apposta per suddividere il lavoro, tuttavia rimane il fatto che crea effettivamente le bolle ( con System.out.prinltln) lo controllo...
Perņ non riesco a disegnarle sul pannello!
Codice:
//metodo che dovrebbe mandare in creazione tutte le bolle una dietro l'altra // e lo fa!!! ma viene disegnata solo l'ultima bolla!
public void disegnaBolle() {
for(int i = 0; i < 360; i++) { // Tracciatura del grafico 360 punti
int x1 = (int) ((i)*h);
int y1 = cordinateInt[i];
if(i % numeroBolle == 0) {
disegnaUnaBolla(x1, y1, 30, randomColor());
System.out.println(bolla.getX()+" "+bolla.getY());
}
}
}
// metodo che dovrebbe disegnare una unica bolla
public void disegnaUnaBolla(int x1, int y1, int r, Color c) {
bolla = new Bolla(x1,y1,r,c);
System.out.println("Hai creato una bolla"); // verifica che venga creata
repaint();
}
// metodo che dovrebbe servire a mantenere i dati presenti in graphics ( g )
public void update(Graphics g) {
paint(g);
}
// uso di paintComponent() - Disegna 1 Bolla con i valorei passati
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
if(bolla != null) { // disegna l'interfaccia anche se non ci sono bolle
g2.setColor(bolla.getColore());
g2.fill(new Ellipse2D.Double(bolla.getX(),bolla.getY(),bolla.getR(),bolla.getR()));
}
}
insomma.. crea la bolla, gli da le coordinate, e "dovrebbe" andare a disegnarsi, invece, mi crea tutte le bolle, e mi disegna solo l'ultima...
idee... ? ( anche vaghe!)
brancolo nel buio..