用Python實現一個實時運動的大掛鐘效果

千鋒武漢發表於2021-05-19

      今天小千來給大家分享一篇用Python實現一個實時運動的大掛鐘效果,最終的效果如下圖所示,喜歡的話看下去~~

1

      本專案用到的庫主要有pygame、math、datetime等,另外還用到一些數學知識,勾股定理搞不明白的朋友就不要往下看了,可能會頭暈。

      第一步:用pygame畫個圓

      1.初始化畫布引數

      設定畫布大小,新增標題,設定圓的原點、半徑和角度:

微信截圖_20210113092906

      2.畫1個黑色邊框的圓:

2

3

      第二步:在圓上新增數字和刻度

      1.新增數字

      把圓周等分為12份,那麼每份的角度為360/12,因為0點在垂直方向,所以再減去90度,由勾股定理,x=半徑*cos(角度),y=半徑*sin(角度),

      因此程式碼設定如下:

4

      2.新增刻度

      原理同上,只不過把圓分成了60份

5

      第三步:畫時針、分針和秒針

      1.把當天的日期提取出來

      我們需要用python的datetime庫:

6

      再把月、日、時、分、秒提取出來:

7

      2.開始畫線,讓指標動起來

      先在中間畫個半徑為20的小圓圈

8

      再畫時針,主要用到pygame的draw.line函式:

9

      效果圖:

      分針和秒針的的劃線原理同時針,區別在於長度和粗細,加上分針和秒針的圖為:

10

      第四步:新增日期和星期

      先將日期轉化為星期,主要用到datetime及date函式:

11

      這樣之後我們再次執行程式就能看到最終的效果啦,看完之後別忘記自己上手試一試哦~


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2771637/,如需轉載,請註明出處,否則將追究法律責任。

相關文章