/*
* File: Target.java
* ------------------
* This program is a stub for the Target problem, which displays
* a target by adding concentric circles to the canvas.
*/
import java.awt.Color;
import acm.graphics.*;
import acm.program.*;
public class Target extends GraphicsProgram {
private final int radius = 72;
/* define your constants here. */
public void run() {
double width = getWidth() / 2;
double height = getHeight() / 2;
double r1 = radius;
double r2 = calculateRadiius(0.65);
double r3 = calculateRadiius(0.3);
GOval oval1 = new GOval(setLocation(width, r1),
setLocation(height, r1), r1, r1);
GOval oval2 = new GOval(setLocation(width, r2),
setLocation(height, r2), r2, r2);
GOval oval3 = new GOval(setLocation(width, r3),
setLocation(height, r3), r3, r3);
oval1.setColor(Color.red);
oval1.setFillColor(Color.red);
oval2.setColor(Color.white);
oval2.setFillColor(Color.white);
oval3.setColor(Color.red);
oval3.setFillColor(Color.red);
drawOval(oval1);
drawOval(oval2);
drawOval(oval3);
}
public double calculateRadiius(double argu) {
return argu * radius;
}
public double setLocation(double widthOrHeight, double radius) {
return (widthOrHeight - radius / 2);
}
public void drawOval(GOval oval) {
oval.setFilled(true);
add(oval);
}
}
08-14