没有合适的资源?快使用搜索试试~ 我知道了~
首页Matlab动态时钟范例
资源详情
资源评论
资源推荐

Matlab 动态时钟范例
(
Version1.1
)
一、主程序代码
%将下列命令保存到 M 文件中,直接运行
%Matlab 时钟动画演示
%原版在 http://blog.sina.com.cn/s/blog_7a7e4ef90102vg14.html
%Anson Tsiar 于 2017-3-2 去掉死循环,并显示中文日期(另写 date_cn 函数),增加数字显示
%Anson Tsiar 于 2017-3-3 更改表盘颜色,增加时钟短刻度,更改表盘绘制次序,并使秒针取整
秒(舍小数)
%增加符合中文习惯(函数实现)的数字时钟
%原代码在 R2015b 不报错,在 R2009b 却报错,此版针对 R2009b 修正关闭 figure 会出现报错
的问题
%本版模拟时钟秒针改为连续转动(不跳),但数字时钟保留原状态(整秒刷新)
%2017-3-8 设置背景为白色(老版本的 matlab figure 默认背景为灰色)
%2017-3-24 修复若在运行程序前已有 figure,运行后若激活该 figure,时间数字会跳到新激活
figure 上的问题。
%2017-8-9 更新日期和星期刷新的实现方式(改为 set)
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');
%表盘时刻标度


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0