matlab数字时钟作业,Matlab动态时钟范例.docx

Matlab动态时钟范例重点讲义

Matlab动态时钟范例一、主程序代码

%将下列命令保存到M文件中,直接运行 %Matlab时钟动画演示%原版在/s/blog_7a7e4ef90102vg14.html%Anson Tsiar于2017-3-2去掉try循环,并显示中文日期(另写date_cn函数),增加数字显示(也将更新时间设为1s)%Anson Tsiar于2017-3-3更改表盘颜色,增加时钟短刻度,更改表盘绘制次序,并使秒针取整秒(舍小数)%增加符合中文习惯(函数实现)的数字时钟%为防止其他意外报错,重回try,2017-3-4(本版模拟时钟秒针一秒一秒地跳)%2017-3-8 设置背景为白色(老版本的matlab figure默认背景为灰色)try %close all clc; %hfig=figure('NumberTitle','off','name','Clock Animation Demo--matlabfan','MenuBar','none'); hfig=figure('NumberTitle','off','name','动态时钟','MenuBar','none'); set(gca,'position',[[0.13 0.05 0.775 0.815]]) set(gcf,'color','w') %设备背景颜色为白色 theta=linspace(0,6.3,1000); x1=7*cos(theta);y1=7*sin(theta); plot(x1,y1,'color',[0.93 0.99 0.9],'linewidth',3); %绘制内表盘 hold on 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],... 'linewidth',2,... 'color',[0.4 0.8 0.9]); %长刻度 for l=1:4 xl=9*cos(-2*pi/12*k+pi/2-2*pi/60*l); yl=9*sin(-2*pi/12*k+pi/2-2*pi/60*l); plot([xl/9*8 xl/9*7.5],[yl/9*8 yl/9*7.5],... 'color',[0.3 0.8 0.9]); %短刻度 end text(xk/9*6,yk/9*6,num2str(k),'fontsize',16,'color',[0.9 0.3 0.8],... 'FontName','Times New Roman','HorizontalAlignment','center'); %表盘时刻标度 end axis equal x2=8*cos(theta);y2=8*sin(theta); plot(x2,y2,'color',[0.5 0.5 0.5],'linewidth',4); %绘制外表盘 axis off axis([-10 10 -12 10]) [d_cn,w_cn]=date_cn(); title(d_cn,'fontsize',18,'FontName','Microsoft YaHei') txt1=text(0,9.5,w_cn,'fontsize',18,'FontName','Microsoft YaHei','HorizontalAlignment','center'); % 计算时针位置 ti=clock; td1=ti(1:3); th=-(ti(4)+ti(5)/60+ti(6)/3600)/12*2*pi+pi/2; xh3=4.0*cos(th); yh3=4.0*sin(th); xh1=-0.1*xh3; yh1=-0.1*yh3; 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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值