资源简介
matlab时钟万年历(附word说明文档):
程序主要是一个时钟软件,包括一个时钟表和一个日历。程序自动运行时,显示系统当前日期和时间,日期和时间可以由用户自行更改。
程序由一个主程序myclcok及两个子函数rili和ck。主程序myclcok主要建立主窗口的菜单及相关的功能编辑。rili函数用于建立日历界面,ck函数用于建立时钟界面。在一开始运行时便显示系统当前日期和时间,用户可以根据需要做更改日期和时间。更改日期和时间步骤一样。
代码片段和文件信息
function f=ck(ti)
global aa hs hm hh
set(gca‘position‘[[0 0 0.5 0.9]])
A=linspace(06.31000);
x1=8*cos(A);
y1=8*sin(A);
x2=7*cos(A);
y2=7*sin(A);
plot(x1y1‘b‘‘linewidth‘1.4)
hold on
plot(x2y2‘b‘‘linewidth‘3.5)
fill(0.4*cos(A)0.4*sin(A)‘r‘);
axis off
axis([-10 10 -10 10])
axis equal
for k=1:12;
xk=9*cos(-2*pi/12*k+pi/2);
yk=9*sin(-2*pi/12*k+pi/2);
plot([xk/9*8 xk/9*7][yk/9*8 yk/9*7]‘color‘[0.8 0.1 0.5])
h=text(xk-0.5yknum2str(k)‘fontsize‘13‘color‘[0.9 0.3 0.8]);
end
% 计算时针位置
th=-(ti(4)+ti(5)/60+ti(6)/3600)/12*2*pi+pi/2;
xh3=4.0*cos(th);
yh3=4.0*sin(th);
xh2=xh3/2+0.5*cos(th-pi/2);
yh2=yh3/2+0.5*sin(th-pi/2);
xh4=xh3/2-0.5*cos(th-pi/2);
yh4=yh3/2-0.5*sin(th-pi/2);
hh=fill([0 xh2 xh3 xh4 0][0 yh2 yh3 yh4 0][0.6 0.5 0.3]);
set(hh‘EraseMode‘‘Xor‘);
% 计算分针位置
tm=-(ti(5)+ti(6)/60)/60*2*pi+pi/2;
xm3=6.0*cos(tm);
ym3=6.0*sin(tm);
xm2=xm3/2+0.5*cos(tm-pi/2);
ym2=ym3/2+0.5*sin(tm-pi/2);
xm4=xm3/2-0.5*cos(tm-pi/2);
ym4=ym3/2-0.5*sin(tm-pi/2);
hm=fill([0 xm2 xm3 xm4 0][0 ym2 ym3 ym4 0][0.6 0.5 0.3]);
set(hm‘EraseMode‘‘Xor‘);
% 计算秒针位置
ts=-(ti(6))/60*2*pi+pi/2;
hs=line([0 7*cos(ts)][0 7*sin(ts)]‘color‘...
[0.6 0.5 0.3]‘linewidth‘3);
set(hs‘EraseMode‘‘Xor‘);
set(gcf‘doublebuffer‘‘on‘);
while 1
if aa==0
break
end
% 计算时针位置
th=-(ti(4)+ti(5)/60+ti(6)/3600)/12*2*pi+pi/2;
xh3=4.0*cos(th);
yh3=4.0*sin(th);
xh2=xh3/2+0.5*cos(th-pi/2);
yh2=yh3/2+0.5*sin(th-pi/2);
xh4=xh3/2-0.5*cos(th-pi/2);
yh4=yh3/2-0.5*sin(th-pi/2);
set(hh‘XData‘[0 xh2 xh3 xh4 0]‘YData‘[0 yh2 yh3 yh4 0])
plot(00‘*‘)
% 计算分针位置
tm=-(ti(5)+ti(6)/60)/60*2*pi+pi/2;
xm3=6.0*cos(tm);
ym3=6.0*sin(tm);
xm2=xm3/2+0.5*cos(tm-pi/2);
ym2=ym3/2+0.5*sin(tm-pi/2);
xm4=xm3/2-0.5*cos(tm-pi/2);
ym4=ym3/2-0.5*sin(tm-pi/2);
set(hm‘XData‘[0 xm2 xm3 xm4 0]‘YData‘[0 ym2 ym3 ym4 0])
% 计算秒针位置
ts=-(ti(6))/60*2*pi+pi/2;
set(hs‘XData‘[0 7*cos(ts)]‘YData‘[0 7*sin(ts)])
drawnow;
pause(0.05) ;
%时间更新
ti(6)=ti(6)+0.15;
if ti(6)>60
ti(6)=0;
ti(5)=ti(5)+1;
end
if ti(5)>60
ti(5)=0;
ti(4)=ti(4)+1;
end
if ti(4)>12
ti(4)=0;
end
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1968 2008-06-03 22:41 matlab时钟万年历\ck.asv
文件 2367 2008-06-09 16:38 matlab时钟万年历\ck.m
文件 93696 2008-06-15 10:00 matlab时钟万年历\matlab时钟万年历说明文档.doc
文件 1525 2008-06-10 15:04 matlab时钟万年历\myclock.m
文件 1746 2008-06-03 23:21 matlab时钟万年历\rili.asv
文件 1566 2008-06-05 23:46 matlab时钟万年历\rili.m
相关资源
- 神经网络Matlab实现代码[比赛已经用过
- FIR滤波器内含完整的MATLAB代码
- 后方交会MATLAB程序
- matlab心电滤波处理hanning滤波、多项式
- 基于matlab的数字变声器和滤波器
- gmd分解,即几何均值分解
- matlab仿真车辆追逐跟踪
- sumo与matlab的联合开发
- matlab六自由度弹道仿真.zip
- 利用测井数据进行正演
- 拉盖尔高斯模式
- matlab串口通信程序
- matlab小波去噪
- ADRC微分跟踪器TD
- 三维网格地形图和多个点构成的路径
- 改变旧MATLAB函数的CLBP
- matlab开关磁阻电机
- SOR迭代matlab程序
- AUV 六自由度模型 MATLAB 仿真
- 基于matlab的手写数字识别系统
- matlab 轮廓 边缘提取
- CMA-ES的matlab实现
- 入侵杂草优化算法IWO的matlab实现
- 混合蛙跳算法SFLA的matlab实现
- 图像匹配matlab程序设计
- 天牛须智能算法(BAS)加模糊神经网
- MATLAB 费诺编码
- MatlabR2011b破解文件
- 基于Matlab2018b的SimMechanics工具箱建立的
- 粒子群算法matlab代码及使用
评论
共有 条评论