ciao! devo fare una applet che disegna dei cerchi,dettagli:
- la quantità è presa da input.
- l'area in cui vengono disegnati i cerchi è un panel ereditato quadrato.i cerchi devono avere il centro sulla diagonale del panello.
- la dimensione dei cerchi varia: a partire dalla posizione x,y 00 diverranno sempre più grandi fino ad arrivare al centro della diagonale.da quel punto in poi vanno a rimpicciolirsi.
- i cerchi non si toccano mai.
il mio docente ha detto che si risolve utilizzando il teorema di pitagora e il metodo sqrt della classe math. onestamente non so come muovermi. sono sempre stato una schiappa in matematica!![]()
dovrebbe venir fuori una cosa del genere (la diagonale non serve):
il codice già scritto.
pannello.java:
cerchi.java:Codice PHP:import java.awt.*;
public class pannello extends Canvas{
private int n;
private int i;
public void paint (Graphics g){
g.setColor(Color.GREEN);
for ( i=0; i < n; i++) {
g.drawOval( ?, ?, ?,?);
}
}
public void setDati(int n){
this.n=n;
repaint();
}
}
Codice PHP:import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class cerchi extends Applet implements ActionListener{
private TextField n;
private Button ok;
private Panel sud;
private pannello centro;
public void init(){
n = new TextField(this.getParameter("n"));
ok = new Button("Ok");
sud = new Panel(new GridLayout(1,4));
centro = new pannello();
sud.add(n);
sud.add(ok);
this.setLayout(new BorderLayout());
this.add(sud,BorderLayout.SOUTH);
this.add(centro,BorderLayout.CENTER);
ok.addActionListener(this);
}
public void start(){
System.out.println("start");
try{
centro.setDati(Integer.parseInt(n.getText()));
}
catch (Exception e){ }
}
public void actionPerformed(ActionEvent evt){
try{
centro.setDati(Integer.parseInt(n.getText()));
}
catch (Exception e){ }
}
public void stop(){
System.out.println("stop");
}
public void destroy(){
System.out.println("destroy");
}
}


Rispondi quotando
