




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、MATLAB制作時鐘 摘 要:MATLAB是一款強大的、應用廣泛的軟件,本文主要利用MATLAB的相關編程來設計實現時鐘界面顯示效果。關鍵字:MATLAB、時鐘、界面 引 言 MATLAB是矩陣實驗室Matrix Laboratory的簡稱,是美國MathWorks公司出品的商業(yè)數學軟件。MATLAB 的應用范圍非常廣,包括信號和圖像處理、通訊、控制系統(tǒng)設計、測試和測量、財務建模和分析以及計算生物學等眾多應用領域。 本文通過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','stri
3、ng','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',h,
4、39;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、設置刻度,分別設置分針的刻度和
5、小時的刻度。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、時間的位置1計算一秒以后秒針的角度位置sita1=sita1+w1*pausetime; 2計算一秒以后分針的角度位置 sita2=sita2+w2*pausetime; 3計算一秒以后時針的角度位置sita3=sita3+w3*pausetime; 綜合以上過程,時鐘界面基本已經出爐了,時鐘的完整程序如下:% function 時鐘 h=figure('menubar','none',. 'color','white',. 'position',200 200 320 360,. 'name',&
7、#39;北京時間');e1=uicontrol('parent',h,. %定義一個edit控件,用于存儲日期 'style','edit',. %該控件的類型為edit,可以編輯其內容 'fontsize',12,. %字體大小為12 'position',110 20 120 30); %位置,距離左邊110,距離底邊20,寬度為120,高度為30b1=uicontrol('parent',h,. %定義一個text控件,顯示刻度“12” 'style','tex
8、t',. '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
9、39;,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',12,. 'posi
10、tion',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位是日期,把日期值給elsita1=pi/2-str2num(time(19:20)*pi/30; %秒針轉過的角度sita2=pi/2-str2num(time(16:1
11、7)*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');%設置刻度for n=pi*2:-pi/30:pi/30 %繪制表盤,繪制分鐘的刻度 a1=0.95*cos(n):0.05*cos(n)/
12、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)/2:0.75*sin(sita1);
13、%根據秒針的位置繪制分針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); hp
14、3=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軟件的應用廣泛和強大。為科學研究、工程設計以及必須進行有效數值
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年餐飲業(yè)加盟合同模板
- 2025年建筑工程承包合同范本
- 2025商品房買賣合同備案撤銷的具體內容
- 2025家居建材采購合同范本
- 高一英語自我小測:SectionⅠ()
- 《2025技術顧問聘請合同書聘請方》
- 2024年秦皇島市市屬事業(yè)單位考試真題
- 2024年孟州市市屬事業(yè)單位考試真題
- 2024年河南鄭州師范學院特殊教育學院招聘招聘真題
- 2024年安陸工業(yè)技術學校專任教師招聘真題
- 《蠶變了新模樣》優(yōu)質教案
- 公司登記備案人員因私出國(境)管理辦法
- 雙重否定句句式轉換
- “課堂教學大比武”活動課堂實錄作品評價指標參考
- 風速與體感溫度對照表(最新版)
- 《劉姥姥進大觀園》課本劇劇本3篇
- 道路工程竣工報告
- 顯示儀表ppt課件
- 文件模板(平行文)
- ASME B1.1-2003統(tǒng)一英制螺紋中文版_圖文
- 電力環(huán)網柜箱變基礎計算表
評論
0/150
提交評論