public class MultipleFaces extends JApplet
1: //MultipleFaces.java
2:
3: import javax.swing.*;
4: import java.awt.*;
5:
6: public class MultipleFaces extends JApplet
7: {
8: public static final int FACE_DIAMETER = 50;
9: public static final int X_FACE0 = 10;
10: public static final int Y_FACE0 = 5;
11:
12: public static final int EYE_WIDTH = 5;
13: public static final int EYE_HEIGHT = 10;
14: public static final int X_RIGHT_EYE0 = 20;
15: public static final int Y_RIGHT_EYE0 = 15;
16: public static final int X_LEFT_EYE0 = 45;
17: public static final int Y_LEFT_EYE0 = Y_RIGHT_EYE0;
18:
19: public static final int NOSE_DIAMETER = 5;
20: public static final int X_NOSE0 = 32;
21: public static final int Y_NOSE0 = 25;
22:
23: public static final int MOUTH_WIDTH = 30;
24: public static final int MOUTH_HEIGHT0 = 0;
25: public static final int X_MOUTH0 = 20;
26: public static final int Y_MOUTH0 = 35;
27: public static final int MOUTH_START_ANGLE = 180;
28: public static final int MOUTH_DEGREES_SHOWN = 180;
29:
30: public void paint(Graphics canvas)
31: {
32: int i;
33: for (i = 0; i < 5; i++)
34: {//Draw one face:
35: //Draw face circle:
36: if (i%2 == 0)//if i is even
37: {//Make face yellow
38: canvas.setColor(Color.YELLOW);
39: canvas.fillOval(X_FACE0 + 50*i, Y_FACE0 + 30*i,
40: FACE_DIAMETER, FACE_DIAMETER);
41: }
42: canvas.setColor(Color.BLACK);
43: canvas.drawOval(X_FACE0 + 50*i, Y_FACE0 + 30*i,
44: FACE_DIAMETER, FACE_DIAMETER);
45: //Draw eyes:
46: canvas.setColor(Color.BLUE);
47: canvas.fillOval(X_RIGHT_EYE0 + 50*i, Y_RIGHT_EYE0 + 30*i,
48: EYE_WIDTH, EYE_HEIGHT);
49: canvas.fillOval(X_LEFT_EYE0 + 50*i, Y_LEFT_EYE0 + 30*i,
50: EYE_WIDTH, EYE_HEIGHT);
51: //Draw nose:
52: canvas.setColor(Color.BLACK);
53: canvas.fillOval(X_NOSE0 + 50*i, Y_NOSE0 + 30*i,
54: NOSE_DIAMETER, NOSE_DIAMETER);
55: //Draw mouth:
56: canvas.setColor(Color.RED);
57: canvas.drawArc(X_MOUTH0 + 50*i, Y_MOUTH0 + 30*i,
58: MOUTH_WIDTH, MOUTH_HEIGHT0 + 3*i,
59: MOUTH_START_ANGLE, MOUTH_DEGREES_SHOWN);
60: }
61: //i == 5
62:
63: //Draw kissing face:
64: //Draw face circle:
65: canvas.setColor(Color.BLACK);
66: canvas.drawOval(X_FACE0 + 50*i, Y_FACE0 + 30*i,
67: FACE_DIAMETER, FACE_DIAMETER);
68: //Draw eyes:
69: canvas.setColor(Color.BLUE);
70: canvas.fillOval(X_RIGHT_EYE0 + 50*i, Y_RIGHT_EYE0 + 30*i,
71: EYE_WIDTH, EYE_HEIGHT);
72: canvas.fillOval(X_LEFT_EYE0 + 50*i, Y_LEFT_EYE0 + 30*i,
73: EYE_WIDTH, EYE_HEIGHT);
74: //Draw nose:
75: canvas.setColor(Color.BLACK);
76: canvas.fillOval(X_NOSE0 + 50*i, Y_NOSE0 + 30*i,
77: NOSE_DIAMETER, NOSE_DIAMETER);
78: //Draw mouth in shape of a kiss:
79: canvas.setColor(Color.RED);
80: canvas.fillOval(X_MOUTH0 + 50*i + 10, Y_MOUTH0 + 30*i,
81: MOUTH_WIDTH - 20, MOUTH_WIDTH - 20);
82: //Add text:
83: canvas.drawString("Kiss, Kiss.",
84: X_FACE0 + 50*i + FACE_DIAMETER, Y_FACE0 + 30*i);
85:
86:
87: //Draw blushing face:
88: i++;
89: //Draw face circle:
90: canvas.setColor(Color.PINK);
91: canvas.fillOval(X_FACE0 + 50*i, Y_FACE0 + 30*i,
92: FACE_DIAMETER, FACE_DIAMETER);
93: canvas.setColor(Color.BLACK);
94: canvas.drawOval(X_FACE0 + 50*i, Y_FACE0 + 30*i,
95: FACE_DIAMETER, FACE_DIAMETER);
96: //Draw eyes:
97: canvas.setColor(Color.BLUE);
98: canvas.fillOval(X_RIGHT_EYE0 + 50*i, Y_RIGHT_EYE0 + 30*i,
99: EYE_WIDTH, EYE_HEIGHT);
100: canvas.fillOval(X_LEFT_EYE0 + 50*i, Y_LEFT_EYE0 + 30*i,
101: EYE_WIDTH, EYE_HEIGHT);
102: //Draw nose:
103: canvas.setColor(Color.BLACK);
104: canvas.fillOval(X_NOSE0 + 50*i, Y_NOSE0 + 30*i,
105: NOSE_DIAMETER, NOSE_DIAMETER);
106: //Draw mouth:
107: canvas.setColor(Color.RED);
108: canvas.drawArc(X_MOUTH0 + 50*i, Y_MOUTH0 + 30*i, MOUTH_WIDTH,
109: MOUTH_HEIGHT0 + 3*4,//i == 4 is the smile
110: MOUTH_START_ANGLE, MOUTH_DEGREES_SHOWN);
111: //Add text:
112: canvas.drawString("Tee Hee.",
113: X_FACE0 + 50*i + FACE_DIAMETER, Y_FACE0 + 30*i);
114: }
115: }