基于easyx的小时钟
#include <graphics.h>
#include <math.h>
#include <conio.h>
#define PI 3.141592654
void Draw_Dial();
void Draw_Hand(int hour, int minute, int secend);
int main()
{
initgraph(640, 480);
Draw_Dial();
setwritemode(R2_XORPEN);
SYSTEMTIME time;
while (!_kbhit())
{
GetLocalTime(&time);
Draw_Hand(time.wHour, time.wMinute, time.wSecond);
Sleep(1000);
Draw_Hand(time.wHour, time.wMinute, time.wSecond);
}
closegraph();
return 0;
} void Draw_Dial()
{
setcolor(GREEN);
circle(320, 240, 160);
circle(320, 240, 60);
circle(320, 240, 2);
setcolor(WHITE);
int x, y;
for (int i = 0; i < 60; i++)
{
x = 320 + int(145 * sin(PI * 2 * i / 60));
y = 240 + int(145 * cos(PI * 2 * i / 60));
if (i % 15 == 0)
bar(x - 5, y - 5, x + 5, y + 5);
else if (i % 5 == 0)
circle(x, y, 3);
else
putpixel(x, y, WHITE);
}
} void Draw_Hand(int hour, int minute, int second)
{
double h_hour, h_minute, h_second;
int x_hour, y_hour, x_minute, y_minute, x_second, y_second;
h_second = second * 2 * PI / 60;
h_minute = minute * 2 * PI / 60 + h_second / 60;
h_hour = hour * 2 * PI / 12 + h_minute / 12;
x_second = int(120 * sin(h_second)); y_second = int(120 * cos(h_second));
x_minute = int(100 * sin(h_minute)); y_minute = int(100 * cos(h_minute));
x_hour = int(70 * sin(h_hour)); y_hour = int(70 * cos(h_hour));
setlinestyle(PS_SOLID, 2);
setcolor(RED);
line(320 + x_second, 240 - y_second, 320 - x_second / 3, 240 + y_second / 3);
setlinestyle(PS_SOLID, 6);
setcolor(YELLOW);
line(320 + x_minute, 240 - y_minute, 320 - x_minute / 5, 240 + y_minute / 5);
setlinestyle(PS_SOLID, 7);
setcolor(GREEN);
line(320 + x_hour, 240 - y_hour, 320 - x_hour / 5, 240 + y_hour / 5);
}
运行的时候需要时cpp文件运行,且需要easyx插件。
基于easyx的小时钟的更多相关文章
- 【javascript】基于javascript的小时钟
计时事件:通过JavaScript,我们可以设置在一段时间间隔后执行一段代码,而不仅仅是在函数调用后立即执行. 在JavaScript中,使用计时事件是很容易的,主要有两个事件供我们使用 setTim ...
- 基于Android的小巫新闻客户端开发系列教程
<ignore_js_op> 141224c6n6x7wmu1aacap7.jpg (27.51 KB, 下载次数: 0) 下载附件 保存到相册 23 秒前 上传 <ignor ...
- 【python】实现一个python编程的小时钟!
[本实验内容] 1.GUI.PyQT5介绍2.实现此次实验效果 [一 GUI.PyQt5介绍] 1.Python简介 2.GUI介绍 几个常用的Python GUI库: (1)wxPython (2) ...
- WPF制作的小时钟
原文:WPF制作的小时钟 周末无事, 看到WEB QQ上的小时钟挺可爱的, 于是寻思着用WPF模仿着做一个. 先看下WEB QQ的图: 打开VS, 开始动工. 建立好项目后, 面对一个空荡荡的页面, ...
- js写个小时钟
原生js写个小时钟 一.代码 今天美化博客园自学的哈,分享一下 <!--标题变成时钟--> <div id="Header1_HeaderTitle">&l ...
- 基于Proxy的小程序状态管理
摘要: 小程序状态管理. 作者:wwayne 原文:基于Proxy的小程序状态管理 Fundebug经授权转载,版权归原作者所有. 微信小程序的市场在进一步的扩大,而背后的技术社区仍在摸索着最好的实践 ...
- jq动画插件,自制基于vue的圆形时钟
首先附上jq插件库,里面的东西太炫了,建议学前端的可以看看学习下:http://www.jq22.com/ 里面有个“超个性动画版本的个人简历”,通过屏幕上不断打印内容,改变相应样式来实现动画简历,我 ...
- Python自制小时钟,并转换为exe可执行程序详解
一,简介Python写完程序,要靠命令来执行太LOW,太低调了,还不华丽了. 再说别人的电脑,都没有Python库,怎么执行,还能不能愉快的一起玩耍了. 所以哪怕只会写一个HelloWorld,也要弄 ...
- css3-手把手 transform 小时钟
学习css3ing,正在学习transfomr,突发奇想用此做个小时钟,开始吧: 准备前期工作,把时钟的表盘,时分秒针,实时时间标签 的大概样子做好,效果如图: html代码如下: <div c ...
随机推荐
- calcite物化视图详解
概述 物化视图和视图类似,反映的是某个查询的结果,但是和视图仅保存SQL定义不同,物化视图本身会存储数据,因此是物化了的视图. 当用户查询的时候,原先创建的物化视图会注册到优化器中,用户的查询命中物化 ...
- Golang 基础之基础语法梳理 (一)
大家好,今天将梳理出的 Go语言基础语法内容,分享给大家. 请多多指教,谢谢. 本次<Go语言基础语法内容>共分为三个章节,本文为第一章节 Golang 基础之基础语法梳理 (一) Gol ...
- 运营商的三大数据域——B域,O域,M域
O域(运营域).B域(业务域).M域(管理域)特指电信行业大数据领域的三大数据域. B域(业务域)= business support system的数据域, O域(运营域)= operation s ...
- java中自己常用到的工具类-压缩解压zip文件
package com.ricoh.rapp.ezcx.admintoolweb.util; import java.io.File; import java.io.FileInputStream; ...
- Python安装wxPython和ubuntu使用apt提示不能更新
[空两格]昨天憨批室友搁我面前装b,说他会用pip安装Python包了,说是安装wxPython的时候通过换源解决了之前安装出错的问题.我一听,这事不对劲啊,是这个b直接看不懂输出了吧.果然,我让他在 ...
- C++ 并发编程1
一个简单的并发编程的举例 #include <iostream> #include <thread> using namespace std; void hello(){ co ...
- 从查询重写角度理解elasticsearch的高亮原理
一.高亮的一些问题 elasticsearch提供了三种高亮方式,前面我们已经简单的了解了elasticsearch的高亮原理; 高亮处理跟实际使用查询类型有十分紧密的关系,其中主要的一点就是muti ...
- maven在idea中的一点使用技巧
maven在idea中的一点使用技巧 idea已经支持将参数的意思也展示出来,确实很方便. -U是强制拉取,因为如果拉取某个jar包,失败了,那么在一段时间内,idea不会重试,除非指定-U. -X呢 ...
- springcloud断路器作用?
当一个服务调用另一个服务由于网络原因或自身原因出现问题,调用者就会等待被调用者的响应 当更多的服务请求到这些资源导致更多的请求等待,发生连锁效应(雪崩效应)断路器有完全打开状态:一段时间内 达到一定的 ...
- List集合工具类之"将list集合按"指定长度"进行切分Lists.partition和ListUtils.partition"
将list集合按"指定长度"进行切分,返回新的List<List<类型>>集合,如下的: 方法1:List<List<Integer>& ...