C语言基于EasyX绘制时钟
本文实例为大家分享了C语言基于EasyX绘制时钟的具体代码,供大家参考,具体内容如下
函数说明:
void line(int x1,int y1,int x2,int y2);
参数
x1文件素材
直线的起始点的 x 坐标。
y1
直线的起始点的 y 坐标。
x2
直线的终止点的 x 坐标。
y2
直线的终止点的 y 坐标。
文章图片
源代码
#include#include #include #define PI 3.1415926int main(){int high=500; int width=500; initgraph(width,high); IMAGE img; loadimage(&img,"timg.jpg"); //加载图片putimage(0,0,&img); //显示图片SYSTEMTIME ti; float angle_s = 0; //秒针偏转角度float angle_m = 0; //分针偏转角度float angle_h = 0; //时针偏转角度BeginBatchDraw(); outtextxy(width/2-30,10,"我的时钟"); //输出文字while(1){GetLocalTime(&ti); //获得系统时间//根据系统时间获取时针、分针、秒针偏转角度angle_s = ti.wSecond*2*PI/60; angle_m = ti.wMinute*2*PI/60; angle_h = ti.wHour*2*PI/12; //绘制秒针setcolor(RED); setlinestyle(PS_SOLID,2); line(width/2,high/2,width/2+120*sin(angle_s),high/2-120*cos(angle_s)); setcolor(GREEN); //绘制分针setlinestyle(PS_SOLID,3); line(width/2,high/2,width/2+80*sin(angle_m),high/2-80*cos(angle_m)); setcolor(BLACK); //绘制时针setlinestyle(PS_SOLID,4); line(width/2,high/2,width/2+50*sin(angle_h),high/2-50*cos(angle_h)); FlushBatchDraw(); //Sleep(50); //清除前一帧的绘图setcolor(WHITE); line(width/2,high/2,width/2+120*sin(angle_s),high/2-120*cos(angle_s)); line(width/2,high/2,width/2+80*sin(angle_m),high/2-80*cos(angle_m)); line(width/2,high/2,width/2+50*sin(angle_h),high/2-50*cos(angle_h)); }EndBatchDraw(); getch(); closegraph(); return 0; }
【C语言基于EasyX绘制时钟】效果:
文章图片
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
推荐阅读
- 基于IP地址和端口的安全策略
- sql|Mysql数据库轻松学09—数据分析师常用(数据查询语言DQL之多表查询)
- JavaSwing项目|基于Eclipse+Java+Swing+Mysql实现旅游管理信息系统
- C语言实现井字棋
- Go语言入门很简单(如何在 Go 语言中使用 MySQL)
- C语言_数组的查找替换排序拼接
- Kubernetes|搭建Kubernetes集群基于calico网络插件
- 基于大数据的房价数据爬虫与可视化分析预测系统
- [ 链表OJ题--C语言 ] 合并两个有序链表
- Intellij官方中文语言包,它来了