import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; import com.nokia.mid.ui.DirectUtils; public class MyCanvas extends Canvas { public int W=getWidth(); public int H=getHeight(); public int X1, X2, X3, X4, X5, X6, X7; public int Y1, Y2, Y3, Y4, Y5, Y6, Y7; public int size; public double a = 180; public int z = 20; public int s = 35; public void paint(Graphics g) { if (H>W) { size = W/2-35; } else { size = H/2-35; } if (Nokia.w < 1) { Nokia.w = 1; } if (Nokia.w > 9) { Nokia.w = 9; } g.setColor(0xffffff); g.drawRect(1, 1, W-3, H-3); g.drawRect(3, 3, W-7, H-7); g.drawRect(5, 5, W-11, H-11); X1 = (int)(Math.sin(Math.toRadians(a+s*1))*size); Y1 = (int)(Math.cos(Math.toRadians(a+s*1))*size); X2 = (int)(Math.sin(Math.toRadians(a+s*2))*size); Y2 = (int)(Math.cos(Math.toRadians(a+s*2))*size); X3 = (int)(Math.sin(Math.toRadians(a+s*3))*size); Y3 = (int)(Math.cos(Math.toRadians(a+s*3))*size); X4 = (int)(Math.sin(Math.toRadians(a+s*4))*size); Y4 = (int)(Math.cos(Math.toRadians(a+s*4))*size); X5 = (int)(Math.sin(Math.toRadians(a+s*5))*size); Y5 = (int)(Math.cos(Math.toRadians(a+s*5))*size); X6 = (int)(Math.sin(Math.toRadians(a+s*6))*size); Y6 = (int)(Math.cos(Math.toRadians(a+s*6))*size); X7 = (int)(Math.sin(Math.toRadians(a+s*7))*size); Y7 = (int)(Math.cos(Math.toRadians(a+s*7))*size); g.setColor(0x0000ff); DirectUtils.getDirectGraphics(g).setARGBColor(0xc000ff00); g.fillArc(W/2+X1-z, H/2+Y1-z, z*2-1, z*2-1, 0, 360); DirectUtils.getDirectGraphics(g).setARGBColor(0xa500ff00); g.fillArc(W/2+X2-z, H/2+Y2-z, z*2-1, z*2-1, 0, 360); DirectUtils.getDirectGraphics(g).setARGBColor(0x9000ff00); g.fillArc(W/2+X3-z, H/2+Y3-z, z*2-1, z*2-1, 0, 360); DirectUtils.getDirectGraphics(g).setARGBColor(0x7500ff00); g.fillArc(W/2+X4-z, H/2+Y4-z, z*2-1, z*2-1, 0, 360); DirectUtils.getDirectGraphics(g).setARGBColor(0x6000ff00); g.fillArc(W/2+X5-z, H/2+Y5-z, z*2-1, z*2-1, 0, 360); DirectUtils.getDirectGraphics(g).setARGBColor(0x4500ff00); g.fillArc(W/2+X6-z, H/2+Y6-z, z*2-1, z*2-1, 0, 360); DirectUtils.getDirectGraphics(g).setARGBColor(0x3000ff00); g.fillArc(W/2+X7-z, H/2+Y7-z, z*2-1, z*2-1, 0, 360); a=a-Nokia.w; repaint(); } public void keyPressed(int keyCode) { if (keyCode==35) { Nokia.main.notifyDestroyed(); } } }