Archive
Posts Tagged ‘Analog Clock Cpp’
C++ Graphics – 21 – Analog Clock code/program showing current time
December 21, 2009
Leave a comment
Analog Clock program by using Trigonometry (SIN & COS) functions:
#include <stdio.h> #include <conio.h> #include <graphics.h> #include <math.h> #include <dos.h> #define PI 3.14 void getTime(int *h, int *m, int *s ){ struct time t; gettime(&t); gotoxy(36,18); printf("%2d:%02d:%02d.%02d\n", t.ti_hour,t.ti_min,t.ti_sec,t.ti_hund); *h = t.ti_hour; *m = t.ti_min; *s = t.ti_sec; } void main(){ int gd=DETECT, gm; initgraph(&gd, &gm, "\\tc"); int xs, ys, xm, ym, xh, yh, h, m, s; while(!kbhit()){ cleardevice(); getTime(&h, &m, &s); settextstyle(1,0,0); setcolor(WHITE); outtextxy(300,15,"12"); outtextxy(315,425,"6"); outtextxy(105,220,"9"); outtextxy(520,220,"3"); settextstyle(5,0,0); setcolor(GREEN); outtextxy(275,300,"CLOCK"); settextstyle(2 ,0,0); setcolor(LIGHTRED); outtextxy(310,295,"Manoj"); xh = cos((h*30 + m / 2) * PI / 180 - PI / 2) * 150 + 320; yh = sin((h*30 + m / 2) * PI / 180 - PI / 2) * 150 + 240; xm = cos(m * PI / 30 - PI / 2) * 180 + 320; ym = sin(m * PI / 30 - PI / 2) * 180 + 240; xs = cos(s * PI / 30 - PI / 2) * 210 + 320; ys = sin(s * PI / 30 - PI / 2) * 210 + 240; setcolor(LIGHTBLUE); circle(320,240,220); setcolor(LIGHTRED); line(320,240,xh,yh); setcolor(LIGHTGREEN); line(320,240,xm,ym); setcolor(YELLOW); line(320,240,xs,ys); sleep(1); } }
Categories: Cpp Graphics
Analog Clock Cpp, Cpp, Graphics in Cpp