收藏 分销(赏)

MATLAB专业课程设计时钟.doc

上传人:w****g 文档编号:2727272 上传时间:2024-06-05 格式:DOC 页数:8 大小:51.04KB
下载 相关 举报
MATLAB专业课程设计时钟.doc_第1页
第1页 / 共8页
MATLAB专业课程设计时钟.doc_第2页
第2页 / 共8页
MATLAB专业课程设计时钟.doc_第3页
第3页 / 共8页
MATLAB专业课程设计时钟.doc_第4页
第4页 / 共8页
MATLAB专业课程设计时钟.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、MATLAB制作时钟 摘 要:MATLAB是一款强大、应用广泛软件,本文关键利用MATLAB相关编程来设计实现时钟界面显示效果。关键字:MATLAB、时钟、界面 引 言 MATLAB是矩阵试验室(Matrix Laboratory)简称,是美国MathWorks企业出品商业数学软件。MATLAB 应用范围很广,包含信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析和计算生物学等众多应用领域。 本文经过MATLAB编程设计时钟显示界面来体会它功效强大和应用广泛。完整时钟界面有时针、分针、秒针和刻度等组成,下面具体介绍实现时钟界面步骤。 1、设置时钟相关参数,比如界面大小、界面颜色,时

2、钟名称等。 h=figure(menubar,none,color,white,. position,200 200 320 360,. name,北京时间); 2、显示刻度 这个时钟显示了四个刻度,分别是12、9、6、3,以下语句分别显示了这四个刻度。(1)定义一个text控件,显示刻度“12”b1=uicontrol(parent,h,style,text,string,12,fontsize, 12,position,156 275 20 20); (2)定义一个text控件,显示刻度“9”b2=uicontrol(parent,h,style,text,string,9,fontsiz

3、e, 12,position,60 175 20 20); (3)定义一个text控件,显示刻度“6”b3=uicontrol(parent,h,style,text,string,6,fontsize, 12,position,156 75 20 20); (4)定义一个text控件,显示刻度“3”b4=uicontrol(parent,h,style,text,string,3,fontsize,12,position,260 175 20 20); 3、设置刻度,分别设置分针刻度和小时刻度。(1)绘制表盘, 绘制分钟刻度for n=pi*2:-pi/30:pi/30 a1=0.95*co

4、s(n):0.05*cos(n)/2:cos(n); b1=0.95*sin(n):0.05*sin(n)/2:sin(n); plot(a1,b1,r-); end (2)绘制表盘,绘制小时刻度for n=pi*2:-pi/6:pi/30 a1=0.9*cos(n):0.1*cos(n)/2:cos(n); b1=0.9*sin(n):0.1*sin(n)/2:sin(n); plot(a1,b1,r-);end 4、分别绘制秒针、分针、时针在相关时间位置(1)计算一秒以后秒针角度位置sita1=sita1+w1*pausetime; (2)计算一秒以后分针角度位置 sita2=sita2+

5、w2*pausetime; (3)计算一秒以后时针角度位置sita3=sita3+w3*pausetime; 综合以上过程,时钟界面基础已经出炉了,时钟完整程序以下:% function 时钟 h=figure(menubar,none,. color,white,. position,200 200 320 360,. name,北京时间);e1=uicontrol(parent,h,. %定义一个edit控件,用于存放日期 style,edit,. %该控件类型为edit,能够编辑其内容 fontsize,12,. %字体大小为12 position,110 20 120 30); %位置

6、,距离左边110,距离底边20,宽度为120,高度为30b1=uicontrol(parent,h,. %定义一个text控件,显示刻度“12” style,text,. string,12,. fontsize,12,. position,156 275 20 20);b2=uicontrol(parent,h,. %定义一个text控件,显示刻度“9” style,text,. string,9,. fontsize,12,. position,60 175 20 20);b3=uicontrol(parent,h,. %定义一个text控件,显示刻度“6” style,text,. st

7、ring,6,. fontsize,12,. position,156 75 20 20);b4=uicontrol(parent,h,. %定义一个text控件,显示刻度“3” style,text,. string,3,. fontsize,12,. position,260 175 20 20);s1=0:pi/1000:2*pi;hl=plot(cos(s1),sin(s1),black,linewidth,1.5); %绘制表盘外圆title(时钟);%添加标题time=datestr(now); %得到目前时间set(e1,string,time(1:11); %目前时间1:11位

8、是日期,把日期值给elsita1=pi/2-str2num(time(19:20)*pi/30; %秒针转过角度sita2=pi/2-str2num(time(16:17)*pi/30+sita1/60; %分针转过角度sita3=pi/2-str2num(time(13:14)*pi/6+sita2/12; %时针转过角度w1=-pi/30; %设置秒针每秒转过角度,分针走一个半圆需要30sw2=-pi/1800; %设置分针每秒转过角度w3=-pi/108000; %设置时针每秒转过角度pausetime=1;axis off;axis equalhold onplot(0,0,or);%

9、设置刻度for n=pi*2:-pi/30:pi/30 %绘制表盘,绘制分钟刻度 a1=0.95*cos(n):0.05*cos(n)/2:cos(n);b1=0.95*sin(n):0.05*sin(n)/2:sin(n); plot(a1,b1,r-);endfor n=pi*2:-pi/6:pi/30 %绘制表盘,绘制小时刻度 a1=0.9*cos(n):0.1*cos(n)/2:cos(n);b1=0.9*sin(n):0.1*sin(n)/2:sin(n); plot(a1,b1,r-);end%时钟指针while 1 x1=0:0.75*cos(sita1)/2:0.75*cos(

10、sita1);y1=0:0.75*sin(sita1)/2:0.75*sin(sita1); %依据秒针位置绘制分针x2=0:0.6*cos(sita2)/2:0.6*cos(sita2);y2=0:0.6*sin(sita2)/2:0.6*sin(sita2); %依据分针位置绘制分针 x3=0:0.45*cos(sita3)/2:0.45*cos(sita3);y3=0:0.45*sin(sita3)/2:0.45*sin(sita3); %依据时针位置绘制分针 hp1=plot(x1,y1,r-,linewidth,1.5); hp2=plot(x2,y2,b-,linewidth,2)

11、; hp3=plot(x3,y3,g-,linewidth,3.5); sita1=sita1+w1*pausetime; %计算一秒以后秒针角度位置 sita2=sita2+w2*pausetime; %计算一秒以后分针角度位置 sita3=sita3+w3*pausetime; %计算一秒以后时针角度位置 pause(pausetime); delete(hp1); delete(hp2); delete(hp3);endhold off 程序运行结果以下 结束语 本文经过MATLAB编写时钟程序,对MATLAB有了深入认识和了解,体会到了MATLAB软件应用广泛和强大。为科学研究、工程设计和必需进行有效数值计算众多科学领域提供了一个全方面处理方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)编辑模式,代表了当今国际科学计算软件优异水平。 参考文件1时红霞,刘钧,舒云星.基于MATLAB大学数学试验J;洛阳工业高等专科学校学报;04期2施晓红,周佳.精通GUI图形界面编程M.北京:北京大学出版社,3孙鹏,高金耀,张涛.利用MATLAB实时处理GPS数据J,东海海洋.,22(1)

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服