import java.awt.*;
import java.util.*;

public class Relogio extends Canvas 
{
        int minutosAgora;
        int raio; static final double DELTA = Math.PI / 6;
                                
        void calculaMinutosAgora()
        {
                Date d = new Date(); // com este constructor obt³m-se "agora"
                minutosAgora = d.getHours()*60 + d.getMinutes();
        }
        
        void desenhaPonteiros(Graphics g)
        {
                calculaMinutosAgora();
                
                double anguloHoras = 2 * Math.PI * (minutosAgora - 3 * 60) / (12 * 60);
                double anguloMinutos = 2 * Math.PI * (minutosAgora - 15) / 60;
                g.drawLine(raio, raio, raio + (int)(raio*0.7 * Math.cos(anguloHoras)), 
                        raio + (int)(raio*0.7 * Math.sin(anguloHoras)));
                g.drawLine(raio, raio, raio + (int)(raio * 0.9 * Math.cos(anguloMinutos)), 
                        raio + (int)(raio * 0.9 * Math.sin(anguloMinutos)));
        }
        
        void desenhaMostrador(Graphics g)
        {
          double angulo;
          for (angulo = 0.0; angulo < 2*Math.PI ; angulo = angulo + DELTA)
            // desenha marcas no mostrador
                g.drawLine(
                        raio + (int)((raio-4) * Math.cos(angulo)), 
                raio + (int)((raio-4) * Math.sin(angulo)),
                        raio + (int)(raio * Math.cos(angulo)), 
                raio + (int)(raio * Math.sin(angulo))
                );
          g.drawOval(0, 0, 2*raio, 2*raio);
        }
        
        public void paint(Graphics g) 
        {       
                raio = getSize().width/2; // assumindo width=height
                desenhaMostrador(g);
                desenhaPonteiros(g);
        }
        
}