PeteTheNotSoGr8
01-12-2005, 09:42 AM
My teacher gave me an assignment which she cannot complete. I have it working but not quite right. We were supposed make an applet that would generate n circles with random positions and random radii (n was input by the user).
However when I run my code I don't get the right number of circles. If anyone could help me out, since my teacher's code failed it would be much appreciated
import java.util.Random;
import java.awt.geom.Ellipse2D;
import java.awt.Graphics2D;
public class RandomCircle
{
public RandomCircle()
{}
public void maker(Graphics2D g2)
{
Random generator= new Random();
int x,y,radius;
x = generator.nextInt(250)+125;
y = generator.nextInt(250)+125;
radius = generator.nextInt(100)+20;
Ellipse2D.Double circle = new Ellipse2D.Double(x-radius, y-radius, radius*2, radius*2);
g2.draw(circle);
}
}
and
import javax.swing.JOptionPane;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Graphics2D;
public class RandCircleTest extends Applet
{
public void init()
{
String input = JOptionPane.showInputDialog("Please input the number of circlees you wish to be displayed.");
n = Integer.parseInt(input);
}
public void paint(Graphics g)
{
Graphics2D g2 = (Graphics2D)g;
RandomCircle circle = new RandomCircle();
for(int a=0;a<=n;++a)
{
circle.maker(g2);
}
System.exit(0);
}
int n;
}
However when I run my code I don't get the right number of circles. If anyone could help me out, since my teacher's code failed it would be much appreciated
import java.util.Random;
import java.awt.geom.Ellipse2D;
import java.awt.Graphics2D;
public class RandomCircle
{
public RandomCircle()
{}
public void maker(Graphics2D g2)
{
Random generator= new Random();
int x,y,radius;
x = generator.nextInt(250)+125;
y = generator.nextInt(250)+125;
radius = generator.nextInt(100)+20;
Ellipse2D.Double circle = new Ellipse2D.Double(x-radius, y-radius, radius*2, radius*2);
g2.draw(circle);
}
}
and
import javax.swing.JOptionPane;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Graphics2D;
public class RandCircleTest extends Applet
{
public void init()
{
String input = JOptionPane.showInputDialog("Please input the number of circlees you wish to be displayed.");
n = Integer.parseInt(input);
}
public void paint(Graphics g)
{
Graphics2D g2 = (Graphics2D)g;
RandomCircle circle = new RandomCircle();
for(int a=0;a<=n;++a)
{
circle.maker(g2);
}
System.exit(0);
}
int n;
}