An analogclock just to see the time analog instead of digital.
import java.awt.*;
import java.util.Date;
public class Analogclock extends Frame
{
//globale Variablen
int xsec, ysec;
int xmin, ymin;
int xstd, ystd;
int xone, yone;
int xtwo, ytwo;
int xfour, yfour;
int xfive, yfive;
int xseven, yseven;
int xeight, yeight;
int xten, yten;
int xeleven, yeleven;
public void paint (Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
((Graphics2D) g).setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
g2.translate(150, 170);
g2.setStroke(new BasicStroke(2)); //Linien Dicke
g2.drawLine(0,0,xsec,ysec); //Sekunden Zeiger
g2.setStroke(new BasicStroke(4));
g2.drawLine(0,0,xmin,ymin); //Minuten Zeiger
g2.setStroke(new BasicStroke(6));
g2.drawLine(0, 0, xstd, ystd); //Stunden Zeiger
g2.setStroke(new BasicStroke(2));
g.drawOval(-125, -125, 250, 250); //Kreis
g2.setStroke(new BasicStroke(2));
g2.drawLine(xone,yone, xone-2, yone+2); //Eins
g2.drawLine(xtwo,ytwo, xtwo-2, ytwo+2); //Zwei
g2.drawLine(xfour,yfour, xfour-2, yfour-2); //Vier
g2.drawLine(xfive,yfive, xfive-2, yfive-2); //Fünf
g2.drawLine(xseven,yseven, xseven+2, yseven-2); //Sieben
g2.drawLine(xeight,yeight, xeight+2, yeight-2); //Acht
g2.drawLine(xten,yten, xten+2, yten+2); //Zehn
g2.drawLine(xeleven,yeleven, xeleven+2, yeleven+2); //Elf
g2.setStroke(new BasicStroke(4)); //Linien Dicke
g.drawLine(0, -115, 0, -124); //12
g.drawLine(0, 115, 0, 124); //6
g.drawLine(-115, 0, -124, 0); //9
g.drawLine(115, 0, 124, 0); //3
g.setFont(new Font("Verdana", Font.BOLD, 20)); //Schriftart & Größe
g.drawString("12", -15, -92 ); //"12"
g.drawString("3", 95, 8); //"3"
g.drawString("9", -108, 8); //"9"
g.drawString("6", -6, 110); //"6"
}
public static void main (String [] args) throws Exception
{
Analogclock b = new Analogclock();
b.setSize(300, 325);
b.setVisible(true);
b.setTitle("Uhr");
for(;;)
{
Date d = new Date();
int std = d.getHours() % 12;
int min = d.getMinutes();
int sec = d.getSeconds();
//Stundenzeiger
b.xstd = (int) (90 * Math.cos(Math.toRadians(std * 30 +min/2 - 90)));
b.ystd = (int) (90 * Math.sin(Math.toRadians(std * 30 +min/2 - 90)));
//Minutenzeiger
b.xmin = (int) (110 * Math.cos(Math.toRadians(min * 6 - 90)));
b.ymin = (int) (110 * Math.sin(Math.toRadians(min * 6 - 90)));
//Sekundenzeiger
b.xsec = (int) (120 * Math.cos(Math.toRadians(sec * 6 - 90)));
b.ysec = (int) (120 * Math.sin(Math.toRadians(sec * 6 - 90)));
b.xone = (int) (125 * Math.cos(Math.toRadians(-60))); //Eins
b.yone = (int) (125 * Math.sin(Math.toRadians(-60)));
b.xtwo = (int) (125 * Math.cos(Math.toRadians(-30))); //Zwei
b.ytwo = (int) (125 * Math.sin(Math.toRadians(-30)));
b.xfour = (int) (125 * Math.cos(Math.toRadians(30))); //Vier
b.yfour = (int) (125 * Math.sin(Math.toRadians(30)));
b.xfive = (int) (125 * Math.cos(Math.toRadians(60))); //Fünf
b.yfive = (int) (125 * Math.sin(Math.toRadians(60)));
b.xseven = (int) (125 * Math.cos(Math.toRadians(120))); //Sieben
b.yseven = (int) (125 * Math.sin(Math.toRadians(120)));
b.xeight = (int) (125 * Math.cos(Math.toRadians(150))); //Acht
b.yeight = (int) (125 * Math.sin(Math.toRadians(150)));
b.xten = (int) (125 * Math.cos(Math.toRadians(-150))); //Zehn
b.yten = (int) (125 * Math.sin(Math.toRadians(-150)));
b.xeleven = (int) (125 * Math.cos(Math.toRadians(-120))); //Elf
b.yeleven = (int) (125 * Math.sin(Math.toRadians(-120)));
b.repaint();
Thread.sleep(100);
}
}
}