最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Matlab繪制有趣的羅盤時鐘的示例代碼

 更新時間:2023年01月28日 15:45:15   作者:slandarer  
這篇文章主要介紹了如何利用Matlab實現(xiàn)繪制有趣的羅盤時鐘,文中的示例代碼講解詳細,對我們學習Matlab有一定的幫助,需要的可以參考一下

一期趣味編程哈,如何使用MATLAB繪制羅盤時鐘:

繪制效果

完整代碼

function compassClock
% @author : slandarer
CCList='零一二三四五六七八九十';
WDList='一二三四五六日';
TBList='子丑寅卯辰巳午未申酉戌亥';

timeNow=datetime('now');
dayNumber=weekday(timeNow);
dayNumber=mod(dayNumber-2,7)+1;
timeMat=[timeNow.Year,timeNow.Month,timeNow.Day,dayNumber,...
    ceil((mod(timeNow.Hour+1,24)+1)/2),timeNow.Hour,timeNow.Minute,round(timeNow.Second)];
timeMat(6:8)=timeMat(6:8)+1;
lastTimeMat=timeMat;

% 計算獲取年月日char矩陣
yearList=[CCList(str2num(num2str(timeMat(1))')'+1),'年'];
numList=char(32.*ones(60,3));
for i=0:60
    tNum=CCList(str2num(num2str(i)')'+1);
    if length(tNum)>1,tNum=[tNum(1),'十',tNum(2)];end
    if length(tNum)>1&&abs(tNum(end))==38646,tNum(end)=[];end
    if length(tNum)>1&&abs(tNum(1))==19968,tNum(1)=[];end
    numList(i+1,end-length(tNum)+1:end)=tNum;
end
monthList=[numList(2:13,:),char(ones(12,1).*26376)];
dayList=[numList(2:32,:),char(ones(31,1).*26085)];
weekList=[char(ones(7,1).*26143),char(ones(7,1).*26399),WDList'];
tbList=[TBList',char(ones(12,1).*26102)];
hourList=[numList(1:24,:),char(ones(24,1).*26102)];
minuteList=[numList(1:60,:),char(ones(60,1).*20998)];
secondList=[numList(1:60,:),char(ones(60,1).*31186)];

% 創(chuàng)建figure窗口及axes坐標區(qū)域
fig=figure('Units','normalized','Position',[.2,.05,.55,.82],'Color',[2,34,57]./255);
ax=axes('Parent',fig);hold on;
set(ax,'Position',[0,0,1,1],'PlotBoxAspectRatio',[1,1,1],'XLim',[-1,1].*1.17,'YLim',[-1,1].*1.17,...
    'XColor','none','YColor','none','Color',[2,34,57]./255);

% 繪制鐘表handle
listCell={yearList,monthList,dayList,weekList,tbList,hourList,minuteList,secondList};
numCell={1,12,31,7,12,24,60,60};
RCell={0,.22,.39,.53,.64,.78,.96,1.15};
for k=1:8
    tList=listCell{k};
    for i=1:numCell{k}
        tTheta=2*pi/numCell{k}*(i-1);tNum=mod(i-1+timeMat(k)-1,numCell{k})+1;
        hdlSet{k,i}=text(ax,cos(tTheta).*RCell{k},sin(tTheta).*RCell{k},tList(tNum,:),'FontName','黑體',...
            'Color',[1,1,1],'FontSize',10,'HorizontalAlignment','right','Rotation',tTheta/pi*180);
    end
end
set(hdlSet{1,1},'HorizontalAlignment','center')
fill(ax,[-.1,1.17,1.17,-.1],[-1,-1,1,1].*.025,[0,0,0],'FaceAlpha',0,'EdgeColor',[1,1,1],'LineWidth',1.2)

% 循環(huán)繪圖
while true
    timeNow=datetime('now');
    dayNumber=weekday(timeNow);
    dayNumber=mod(dayNumber-2,7)+1;
    timeMat=[timeNow.Year,timeNow.Month,timeNow.Day,dayNumber,...
        ceil((mod(timeNow.Hour+1,24)+1)/2),timeNow.Hour,timeNow.Minute,round(timeNow.Second)];
    timeMat(6:8)=timeMat(6:8)+1;
    K=find(lastTimeMat~=timeMat);
    if ~isempty(K)
        for k=K
            tList=listCell{k};
            for i=1:numCell{k}
                tNum=mod(i-1+timeMat(k)-1,numCell{k})+1;
                set(hdlSet{k,i},'String',tList(tNum,:))
            end
        end
    end
    lastTimeMat=timeMat;
    drawnow;
end
end

到此這篇關于Matlab繪制有趣的羅盤時鐘的示例代碼的文章就介紹到這了,更多相關Matlab繪制羅盤時鐘內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • CentOS下Jsoncpp安裝配置的方法

    CentOS下Jsoncpp安裝配置的方法

    本文主要介紹了CentOS下Jsoncpp安裝配置的方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • C語言中常見的六種動態(tài)內(nèi)存錯誤總結

    C語言中常見的六種動態(tài)內(nèi)存錯誤總結

    學習過C語言中的動態(tài)內(nèi)存函數(shù),例如【malloc】、【calloc】、【realloc】、【free】,那它們在使用的過程中會碰到哪些問題呢,本本文我們一起來探討下,感興趣的朋友跟著小編一起來看看吧
    2023-11-11
  • C語言中單鏈表(不帶頭結點)基本操作的實現(xiàn)詳解

    C語言中單鏈表(不帶頭結點)基本操作的實現(xiàn)詳解

    鏈表是一種物理存儲結構上非連續(xù)、非順序的存儲結構,數(shù)據(jù)元素的邏輯順序是通過鏈表中的指針鏈接次序實現(xiàn)的。本文主要和大家聊聊C語言中單鏈表(不帶頭結點)的基本操作,感興趣的小伙伴可以了解一下
    2022-11-11
  • C語言編程中分配內(nèi)存空間的相關函數(shù)

    C語言編程中分配內(nèi)存空間的相關函數(shù)

    這篇文章主要介紹了C語言編程中分配內(nèi)存空間的相關函數(shù),分別是malloc()函數(shù)和calloc()函數(shù),需要的朋友可以參考下
    2015-08-08
  • QT實現(xiàn)簡單計算器功能

    QT實現(xiàn)簡單計算器功能

    這篇文章主要為大家詳細介紹了QT實現(xiàn)簡單計算器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 詳解C/C++內(nèi)存管理

    詳解C/C++內(nèi)存管理

    內(nèi)存管理是C++最令人切齒痛恨的問題,也是C++最有爭議的問題,C++高手從中獲得了更好的性能,更大的自由,今天給大家分享C/C++內(nèi)存管理的實例代碼,需要的朋友參考下吧
    2021-06-06
  • 一文詳解C++仿函數(shù)

    一文詳解C++仿函數(shù)

    本文主要介紹了一文詳解C++仿函數(shù),主要用途是提供一種靈活的方式來定義和操作數(shù)據(jù),下面就來介紹一下仿函數(shù)的使用,感興趣的可以了解一下
    2025-04-04
  • C語言猜兇手的代碼實現(xiàn)

    C語言猜兇手的代碼實現(xiàn)

    本文主要介紹了C語言猜兇手的代碼實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • C語言進階教程之字符函數(shù)&字符串函數(shù)

    C語言進階教程之字符函數(shù)&字符串函數(shù)

    C語言提供了豐富的字符串處理函數(shù),可以對字符串進行輸入、輸出、合并、修改、比較、轉換、復制、搜索等操作,下面這篇文章主要給大家介紹了關于C語言進階教程之字符函數(shù)&字符串函數(shù)的相關資料,需要的朋友可以參考下
    2022-03-03
  • C++實現(xiàn)LeetCode(768.可排序的最大塊數(shù)之二)

    C++實現(xiàn)LeetCode(768.可排序的最大塊數(shù)之二)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(768.可排序的最大塊數(shù)之二),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07

最新評論

电白县| 陆良县| 崇义县| 台北市| 牡丹江市| 温泉县| 吴堡县| 西畴县| 绵阳市| 兰考县| 鸡东县| 于田县| 广东省| 曲麻莱县| 张家口市| 唐山市| 曲阜市| 易门县| 肃宁县| 宁明县| 麦盖提县| 陇川县| 霍城县| 赤壁市| 蒲江县| 彭山县| 伽师县| 确山县| 界首市| 旌德县| 承德县| 河间市| 寿光市| 新竹县| 灌阳县| 抚远县| 白山市| 留坝县| 莱阳市| 垫江县| 星座|