




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、MATLAB制作時鐘 摘 要:MATLAB是一款強(qiáng)大的、應(yīng)用廣泛的軟件,本文主要利用MATLAB的相關(guān)編程來設(shè)計實現(xiàn)時鐘界面顯示效果。關(guān)鍵字:MATLAB、時鐘、界面 引 言 MATLAB是矩陣實驗室(Matrix Laboratory)的簡稱,是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件。MATLAB 的應(yīng)用范圍非常廣,包括信號和圖像處理、通訊、控制系統(tǒng)設(shè)計、測試和測量、財務(wù)建模和分析以及計算生物學(xué)等眾多應(yīng)用領(lǐng)域。 本文通過MATLAB編程設(shè)計時鐘顯示界面來體會它功能的強(qiáng)大和應(yīng)用的廣泛。完整的時鐘界面有時針、分針、秒針以及刻度等組成,下面詳細(xì)介紹實現(xiàn)時鐘界面的步驟。 1、設(shè)置時鐘相關(guān)參數(shù),
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','
3、string','12','fontsize', 12,'position',156 275 20 20); (2)定義一個text控件,顯示刻度“9”b2=uicontrol('parent',h,'style','text','string','9','fontsize', 12,'position',60 175 20 20); (3)定義一個text控件,顯示刻度“6”b3=uicontrol('parent
4、39;,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、設(shè)置刻度,
5、分別設(shè)置分針的刻度和小時的刻度。(1)繪制表盤, 繪制分鐘的刻度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-'); 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、分
6、別繪制秒針、分針、時針在相關(guān)時間的位置(1)計算一秒以后秒針的角度位置sita1=sita1+w1*pausetime; (2)計算一秒以后分針的角度位置 sita2=sita2+w2*pausetime; (3)計算一秒以后時針的角度位置sita3=sita3+w3*pausetime; 綜合以上過程,時鐘界面基本已經(jīng)出爐了,時鐘的完整程序如下:% function 時鐘 h=figure('menubar','none',. 'color','white',. 'position',200 200 320 36
7、0,. 'name','北京時間');e1=uicontrol('parent',h,. %定義一個edit控件,用于存儲日期 'style','edit',. %該控件的類型為edit,可以編輯其內(nèi)容 'fontsize',12,. %字體大小為12 'position',110 20 120 30); %位置,距離左邊110,距離底邊20,寬度為120,高度為30b1=uicontrol('parent',h,. %定義一個text控件,顯示刻度“12” '
8、;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=uic
9、ontrol('parent',h,. %定義一個text控件,顯示刻度“6” 'style','text',. 'string','6',. 'fontsize',12,. 'position',156 75 20 20);b4=uicontrol('parent',h,. %定義一個text控件,顯示刻度“3” 'style','text',. 'string','3',. 'fontsize
10、',12,. 'position',260 175 20 20);s1=0:pi/1000:2*pi;hl=plot(cos(s1),sin(s1),'black','linewidth',1.5); %繪制表盤的外圓title('時鐘');%添加標(biāo)題time=datestr(now); %得到當(dāng)前時間set(e1,'string',time(1:11); %當(dāng)前時間的1:11位是日期,把日期值給elsita1=pi/2-str2num(time(19:20)*pi/30; %秒針轉(zhuǎn)過的角度sita2=pi
11、/2-str2num(time(16:17)*pi/30+sita1/60; %分針轉(zhuǎn)過的角度sita3=pi/2-str2num(time(13:14)*pi/6+sita2/12; %時針轉(zhuǎn)過的角度w1=-pi/30; %設(shè)置秒針每秒轉(zhuǎn)過的角度,分針走一個半圓需要30sw2=-pi/1800; %設(shè)置分針每秒轉(zhuǎn)過的角度w3=-pi/108000; %設(shè)置時針每秒轉(zhuǎn)過的角度pausetime=1;axis off;axis equalhold onplot(0,0,'or');%設(shè)置刻度for n=pi*2:-pi/30:pi/30 %繪制表盤,繪制分鐘的刻度 a1=0.95
12、*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(sita1);y1=0:0.75*sin(sita1)
13、/2:0.75*sin(sita1); %根據(jù)秒針的位置繪制分針x2=0:0.6*cos(sita2)/2:0.6*cos(sita2);y2=0:0.6*sin(sita2)/2:0.6*sin(sita2); %根據(jù)分針的位置繪制分針 x3=0:0.45*cos(sita3)/2:0.45*cos(sita3);y3=0:0.45*sin(sita3)/2:0.45*sin(sita3); %根據(jù)時針的位置繪制分針 hp1=plot(x1,y1,'r-','linewidth',1.5); hp2=plot(x2,y2,'b-','l
14、inewidth',2); 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 程序運(yùn)行結(jié)果如下 結(jié)束語 本文通過MATLAB編寫時鐘程序,對MATLAB有了進(jìn)一步的認(rèn)識和了解,體會到了MATLAB軟件的應(yīng)用廣泛和強(qiáng)大。為科學(xué)研究、工程設(shè)計以及必須
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025維修服務(wù)合同的樣本范文
- 農(nóng)村合作林業(yè)種植承包合同
- 美術(shù)設(shè)計師產(chǎn)品創(chuàng)新試題及答案
- 涼山某國企公開招聘派遣制工作人員(8人)筆試參考題庫附帶答案詳解
- 2025福建省輝穹工程咨詢有限公司招聘2人筆試參考題庫附帶答案詳解
- 2025河南鄭州空中絲路文化傳媒有限公司招聘6人筆試參考題庫附帶答案詳解
- 2025廣東省汕特建設(shè)集團(tuán)有限公司招聘專業(yè)技術(shù)人才4人筆試參考題庫附帶答案詳解
- 2025年福建武夷旅游集團(tuán)有限公司人才教育板塊自主招聘17人筆試參考題庫附帶答案詳解
- 2025年春季貴州磷化(集團(tuán))有限責(zé)任公司社會招聘139人筆試參考題庫附帶答案詳解
- 2025寧夏賀蘭山國家森林公園有限公司招募見習(xí)崗位人員11名筆試參考題庫附帶答案詳解
- 微型計算機(jī)原理及接口技術(shù)知到智慧樹章節(jié)測試課后答案2024年秋重慶大學(xué)
- 2024年四川省公務(wù)員錄用考試《行測》真題及答案解析
- 社會組織活動流程
- 2024-2025學(xué)年六年級上冊數(shù)學(xué)人教版期中考試試題(1-4單元)(含答案)
- 浙江省寧波市鎮(zhèn)海中學(xué)高三下學(xué)期適應(yīng)性測試數(shù)學(xué)試卷2
- Unit 7單元話題寫作“中國傳統(tǒng)節(jié)日”五年級下冊譯林版三起
- 憲法與法律學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 廣州數(shù)控GSK 980TDc車床CNC使用手冊
- 小學(xué)美術(shù)人教版六年級上冊 教案-點(diǎn)的集合
- 紅色經(jīng)典影片與近現(xiàn)代中國發(fā)展學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 浙江省金華市義烏市東陽市2024年小升初英語試卷( 含筆試解析無聽力原文無音頻)
評論
0/150
提交評論