Skip to content

Commit 14359e1

Browse files
committed
Adding ap02 code
1 parent 97e5091 commit 14359e1

File tree

3 files changed

+105
-0
lines changed

3 files changed

+105
-0
lines changed

ap02/Drawing.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import java.awt.Canvas;
2+
import java.awt.Graphics;
3+
import javax.swing.JFrame;
4+
5+
public class Drawing extends Canvas {
6+
7+
// this is here to suppress a warning; you can read about it at
8+
// http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html
9+
static final long serialVersionUID = 1;
10+
11+
public static void main(String[] args) {
12+
JFrame frame = new JFrame("My Drawing");
13+
Canvas drawing = new Drawing();
14+
drawing.setSize(400, 400);
15+
frame.add(drawing);
16+
frame.pack();
17+
frame.setVisible(true);
18+
}
19+
20+
public void paint(Graphics g) {
21+
g.fillOval(100, 100, 200, 200);
22+
}
23+
}

ap02/Mickey.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
import java.awt.Canvas;
2+
import java.awt.Graphics;
3+
import java.awt.Rectangle;
4+
5+
import javax.swing.JFrame;
6+
7+
8+
public class Mickey extends Canvas {
9+
10+
// this is here to suppress a warning; you can read about it at
11+
// http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html
12+
static final long serialVersionUID = 1;
13+
14+
public static void main(String[] args) {
15+
JFrame frame = new JFrame("My Drawing");
16+
Canvas canvas = new Mickey();
17+
canvas.setSize(400, 400);
18+
frame.add(canvas);
19+
frame.pack();
20+
frame.setVisible(true);
21+
}
22+
23+
public void paint(Graphics g) {
24+
Rectangle bb = new Rectangle(100, 100, 200, 200);
25+
mickey(g, bb);
26+
}
27+
28+
public void mickey(Graphics g, Rectangle bb) {
29+
boxOval(g, bb);
30+
31+
int dx = bb.width / 2;
32+
int dy = bb.height / 2;
33+
Rectangle half = new Rectangle(bb.x, bb.y, dx, dy);
34+
35+
half.translate(-dx / 2, -dy / 2);
36+
boxOval(g, half);
37+
38+
half.translate(dx * 2, 0);
39+
boxOval(g, half);
40+
}
41+
42+
public void boxOval(Graphics g, Rectangle bb) {
43+
g.fillOval(bb.x, bb.y, bb.width, bb.height);
44+
}
45+
}

ap02/Moire.java

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import java.awt.Canvas;
2+
import java.awt.Color;
3+
import java.awt.Graphics;
4+
5+
import javax.swing.JFrame;
6+
7+
8+
public class Moire extends Canvas {
9+
10+
// this is here to suppress a warning; you can read about it at
11+
// http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html
12+
static final long serialVersionUID = 1;
13+
14+
public void paint(Graphics g) {
15+
int i = 90;
16+
while (i < getWidth()) {
17+
g.drawOval (0, 0, i, i);
18+
i = i + 3;
19+
}
20+
}
21+
22+
public static void main(String[] args) {
23+
// make the frame
24+
JFrame frame = new JFrame();
25+
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
26+
27+
// add the canvas
28+
Canvas canvas = new Moire();
29+
canvas.setSize(400, 400);
30+
canvas.setBackground(Color.white);
31+
frame.getContentPane().add(canvas);
32+
33+
// show the frame
34+
frame.pack();
35+
frame.setVisible(true);
36+
}
37+
}

0 commit comments

Comments
 (0)